映射到嵌套类

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

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

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

public class DB : DbContext { public DbSet Contacts { get; set; } .... } 

Contact模型如下:

 public class ContactModels { public class Contact { public int ID { get; set; } public string FirstName { get; set; } public string LastName { get; set; } ... } } 

连接字符串:

  

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

 protected void Application_Start() { Database.SetInitializer(new CreateDatabaseIfNotExists()); .... } 

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

错误的部分是您正在尝试映射嵌套类。 entity framework不支持它。

我不知道您的代码有什么问题,但如果您想从数据库开始并生成C#代码,请使用entity framework电源工具CTP1 http://blogs.msdn.com/b/adonet/archive/2011/ 5月18日/ EF-动力工具CTP1,released.aspx