映射到嵌套类

Ter*_*rry 3 .net c# sql-server nested-class entity-framework-4.1

我的应用程序运行时收到以下错误:

System.InvalidOperationException:未映射"ContactModels + Contact"类型.使用Ignore方法或NotMappedAttribute数据批注检查未明确排除类型.验证类型是否已定义为类,不是原始类,嵌套类还是通用类,并且不从EntityObject继承.

当我的DBContext类尝试初始化实体时失败:

public class DB : DbContext
{
    public DbSet<ContactModels.Contact> Contacts { get; set; }
    ....
}
Run Code Online (Sandbox Code Playgroud)

Contact模型如下:

public class ContactModels
{
    public class Contact
    {
        public int ID { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

连接字符串:

<add name="DB" connectionString="Data Source=XXXXX;Initial Catalog=XXXX;Trusted_Connection=True"
  providerName="System.Data.SqlClient" />
Run Code Online (Sandbox Code Playgroud)

我得到的错误是数据库是否存在,或者即使它不存在,我也将其初始化:

protected void Application_Start()
{
    Database.SetInitializer(new CreateDatabaseIfNotExists<Models.DB>());
    ....
}
Run Code Online (Sandbox Code Playgroud)

这是我第一次使用EF,我已经遵循了一些教程,但我使用的是SQL Server 2008 R2,并且更愿意自己创建数据库,而不是让EF为我创建它.虽然在这一点上我会采取任何一个,如果它的工作.

Lad*_*nka 9

错误的部分是您正在尝试映射嵌套类.实体框架不支持它.