我知道之前已经问过这个问题而且我已经阅读了所有这些问题,但他们没有帮助我:(
我正在尝试创建一个带视图的控制器。
我使用的是EF 6,并在web.config中配置了这个配置:
<entityFramework>
<defaultConnectionFactory type="Npgsql.NpgsqlFactory, Npgsql" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, Npgsql.EntityFramework" />
</providers>
然后我发现EF6不支持脚手架,所以我将EF降级到版本5.事实证明,EF 5无法识别标签,所以我将其删除了:
<entityFramework>
<defaultConnectionFactory type="Npgsql.NpgsqlFactory, Npgsql" />
</entityFramework>
现在,当我尝试创建控制器时,我收到此错误:
Using the same DbCompiledModel to create contexts against different types of database servers is not supported.
Instead, create a separate DbCompiledModel for each type of server being used.
这是我的connectionStrings
:
<connectionStrings>
<add name="MyConnection" connectionString="Server=localhost;Database=hotel;User Id=postgres;Password=6060;" providerName="Npgsql" />
</connectionStrings>
我知道这应该是微不足道的。原谅菜鸟:(
我该如何解决这个问题?
如果需要,我会发布更多代码。
答案 0 :(得分:1)
不是问题的解决方案,而是解决方法:
在添加控制器之前在web.config中注释连接字符串,然后您可以取消注释
我不知道为什么在地球上它会这样运作