我的应用程序运行时出现以下错误:



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

public class DB : DbContext
{
    public DbSet<ContactModels.Contact> Contacts { get; set; }
    ....
}

接触模型如下:
public class ContactModels
{
    public class Contact
    {
        public int ID { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        ...
    }
}

连接字符串:
<add name="DB" connectionString="Data Source=XXXXX;Initial Catalog=XXXX;Trusted_Connection=True"
  providerName="System.Data.SqlClient" />

无论数据库是否存在,我都会收到错误消息,即使它不存在并且我正在初始化它:
protected void Application_Start()
{
    Database.SetInitializer(new CreateDatabaseIfNotExists<Models.DB>());
    ....
}

这是我第一次使用 EF,我已经学习了一些教程,但我使用的是 SQL Server 2008 R2,并且更愿意让自己创建数据库,而不是让 EF 为我创建它。虽然在这一点上,如果它有效,我会接受。

最佳答案

错误的部分是您试图映射嵌套类。 Entity Framework 不支持它。

关于c# - 映射到嵌套类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7583996/

10-13 03:18