我正在尝试启用迁移,但抛出异常:



我假设App.config文件没有正确设置(当我添加EF软件包时,它是自动设置的)。我所做的就是添加连接字符串:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>

  <section Name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
 <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --></configSections>

 <connectionStrings>
   <add Name="MyContext" connectionString="data source=MYSERVER;initial catalog=CodeFirstTest;user id=***;password=***;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />
 </connectionStrings>

 <entityFramework>
   <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
     <parameters>
       <parameter value="v11.0" />
     </parameters>
   </defaultConnectionFactory>
   <providers>
     <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
   </providers>
 </entityFramework>
</configuration>

我正在使用SQL Server 2008 R2。

因为我确实有一个连接字符串,所以我认为我不需要defaultconnectionfactory。我对么? (注意:即使没有本节,我仍然会遇到相同的异常)

我还想念什么?

最佳答案

当我的<connectionString />条目位于Web.config的顶部时,也就是<configuration>之后,我遇到了同样的问题。然后我尝试将其移到</configuration>之前,并且它起作用了。

关于c# - Code First无法启用迁移,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27146280/

10-11 01:31