我有一个项目的EF
和Code First方法有使用数据注释的是直线前进。 现在,我与数据库优先工作,我看到使用数据注释是更具体的,所以我想知道实现它的正确步骤。
我的项目,提供数据访问的结构是这样的:
在ModelExtensions
是我创建的数据注释添加到我的所有文件DbContextModel.tt
实体。
这是我在文件中的一个结构ModelExtensions
:
using System;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
namespace DataAccess.ModelExtensions
{
[MetadataType(typeof(MCS_ContentTypesMetaData))]
public partial class MCS_ContentTypes : BaseEntity
{
}
internal sealed class MCS_ContentTypesMetaData
{
[Required]
[StringLength(10)]
public string Name { get; set; }
}
}
我这里有几个问题。 首先 - 命名空间。 它应该是这样的namespace DataAccess.ModelExtensions
或我不得不删除.ModelExtensions
部分。 我是第一次有使用DB看着一个项目的命名空间只是DataAccess
不知道为什么它需要(如果有的话)。 而且-我需要一些其他的引用添加到DbContextModel.tt
实体? 现在我用这个标准的C#类,然后将其重命名为: public partial class MCS_ContentTypes : BaseEntity
。 我必须用特殊的方法来创建这些明确暴露实体与该文件之间的联系?