尝试首次插入数据时出错 - Entity Framework 6(Model First)

时间:2014-08-14 18:51:41

标签: c# entity-framework

我采用模型第一种方法使用Entity Framework 6创建数据层。我完成了模型,创建了数据库并编写了一个插入查询。具有EF的数据层被设置为单独的项目。我的启动项目是一个简单的Windows应用程序,它执行对DBContext的简单插入,如下所示:

using (var context = new Tools.DAL.DTContext())
{
    context.QueryResponses.Add(response);
    context.SaveChanges();
}

在启动项目中,我引用了数据层项目(Tools.DAL);在启动项目的app.comfig中,我有连接字符串:

<connectionStrings>
    <clear />
    <add name="DTContext"
    providerName="System.Data.SqlClient"
    connectionString="Data Source=192.168.x.xxx;Initial Catalog=MyCatalogueDB;
          Persist Security Info=True;User ID=xxxxx;Password=xxxxxx" />
 </connectionStrings>

DTContext定义为:

 public DTContext() : base("name=DTContext")  {}

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        throw new UnintentionalCodeFirstException();
    }

我想先保留代码,所以我不想删除异常行(似乎可以解决问题)

这是我运行代码时遇到的错误:

  

&#39; System.Data.Entity.Infrastructure.UnintentionalCodeFirstException&#39;

     

附加信息:上下文正在Code First模式中使用,其代码是从EDMX文件生成的,用于Database First或Model First开发。这将无法正常工作。要解决此问题,请不要删除引发此异常的代码行。如果您希望使用Database First或Model First,请确保Entity Framework连接字符串包含在启动项目的app.config或web.config中。如果要创建自己的DbConnection,请确保它是EntityConnection而不是其他类型的DbConnection,并将其传递给采用DbConnection的基本DbContext构造函数之一。要了解有关Code First,Database First和Model First的更多信息,请参阅此处的Entity Framework文档:&gt; http://go.microsoft.com/fwlink/?LinkId=394715

0 个答案:

没有答案