首先出现EF6代码和ASP.NET MVC5中的Mysql问题

问题描述 投票:0回答:1

我想使用EF6和Mysql创建一个简单的代码优先的ASP.NET MVC5项目,但是在将合适的Nupkg添加到我的项目中并编辑了web.config之后,然后脚手架控制器,视图...,创建的数据库有两个问题如下:enter image description here

问题:未创建_migrationhistory表,并且未分配PK列!这是我的web.config:

 <connectionStrings>
    <remove name="LocalMySqlServer" />
    <add name="LocalMySqlServer" connectionString="" providerName="MySql.Data.MySqlClient" />
    <add name="TestContext" providerName="MySql.Data.MySqlClient" connectionString="Data Source=localhost;userid=root;password=***;database=Test_DB;Integrated Security=True;CharSet=utf8 ;" />
  </connectionStrings>

  <entityFramework>
    <defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
    <providers>
      <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
    </providers>
  </entityFramework>

在创建我的控制器,视图之后,...(自动)(脚手架)并运行了项目,一切看起来都不错,但是在数据库中情况有所不同。

在一个新项目中,脚手架(创建自动控制器,视图,上下文等)后,我没有运行该程序!相反,我做了:enable-migrations,add-migration createDB,update-database,结果是很好地创建了表,并且也创建了__migrationhistory,但是在那之后,当我运行该项目时,它说:

自创建数据库以来,支持'TestContext'上下文的模型已更改。考虑使用代码优先迁移来更新数据库(http://go.microsoft.com/fwlink/?> LinkId = 238269)

可以说,在Windows窗体应用程序中,使用上述迁移代码,我首先使用代码来创建数据库,表和运行程序没有问题。但是在使用上述代码进行迁移之后,在ASP.NET MVC5中,该项目无法运行,因为您看到上面的错误]

mysql asp.net-mvc ef-code-first
1个回答
0
投票

已解决-我尝试了20次以上,并且我知道在运行程序之前,我应该启用迁移/添加迁移/更新数据库,但我不知道发生了什么,但是在运行项目后再也看不到此错误。

© www.soinside.com 2019 - 2024. All rights reserved.