gpt4 book ai didi

asp.net - 在 Visual Studio 2012 中创建 Controller 时出错

转载 作者:行者123 更新时间:2023-12-02 07:21:03 25 4
gpt4 key购买 nike

我正在尝试学习 ASP.NET MVC,因此我正在按照 asp.net 网站上的音乐商店教程进行操作。

我现在使用 Album.cs 作为模型类,使用 MusicStoreEntities.cs 作为数据上下文类来创建 StoreManagerController。

我创建 Controller 时的错误是:无法检索“MvcMusicStore.Models.Album”的元数据。不支持使用相同的 DbCompiledModel 针对不同类型的数据库服务器创建上下文。相反,为正在使用的每种类型的服务器创建一个单独的 DbCompiledModel。

听起来我正在使用两个不同的数据库,但这是 Web.config 中的连接字符串部分:

<connectionStrings>
<add name="MusicStoreEntities" providerName="System.Data.SqlServerCe.4.0" connectionString="Data Source=|DataDirectory|\MvcMusicStore.sdf"/>
</connectionStrings>

奇怪的是,如果我注释掉 MusicStoreEntities 连接字符串,然后尝试创建它可以工作的 StoreManagerController 。如果我将解决方案设置中的目标框架更改为 .NET Framework 4,在 Visual Studio 2010 中打开解决方案,然后创建 Controller ,它也可以工作。

那么这是 Visual Studio 2012 还是连接字符串的问题?也许与CE4.0和VS2012存在一些兼容性问题?

最佳答案

问题在于使用教程中使用的 CE 版本数据库。当切换到其他数据库版本(例如 SQL Server 2012)时,它对我来说效果很好。试试这个:

更改此连接字符串

<add name="MusicStoreEntities" connectionString="Data Source=|DataDirectory|MvcMusicStore.sdf" providerName="System.Data.SqlServerCe.4.0"/>

 <add name="MusicStoreEntities" connectionString="Data Source=DBInstanceName;Initial Catalog=MvcMusicStore;Integrated Security=True" providerName="System.Data.SqlClient" />

关于asp.net - 在 Visual Studio 2012 中创建 Controller 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12323307/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com