加入收藏 | 设为首页 | 会员中心 | 我要投稿 莱芜站长网 (https://www.0634zz.com/)- 云连接、建站、智能边缘云、设备管理、大数据!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc C MVC“添加控制器”是“无法检索元数据…配置系统无法初始化”

发布时间:2023-12-16 16:37:51 所属栏目:asp.Net 来源:DaWei
导读: 从零开始,我做了两个项目的新解决方案:一个是MVC 3,另一个是支持EF 4.2项目.整个事情成功建成.从MVC项目中,我打开“添加控制器”对话框,并根据从支持的EF项目中选择的上下文和模型生成代码

从零开始,我做了两个项目的新解决方案:一个是MVC 3,另一个是支持EF 4.2项目.整个事情成功建成.从MVC项目中,我打开“添加控制器”对话框,并根据从支持的EF项目中选择的上下文和模型生成代码. “添加控制器”对话失败,并显示以下消息:

Unable to retrieve metadata for ‘MyModelClass’. Configuration system failed to initialize.

我注意到,“添加控制器”对话框实际上是试图从其web.config文件中获取数据库连接字符串.首先,这使我像愚蠢的,因为支持的EF项目已经有一个具有连接字符串的app.config.但是永远不要说,最好的是,web.config中的连接字符串是不好的.这是它的样子:

<add name="Monsters2Entities" connectionString=" metadata=res://*/Monsters.csdl| res://*/Monsters.ssdl| res://*/Monsters.msl; provider=System.Data.SqlClient; provider connection string=&quot; data source=.; initial catalog=Monsters2; integrated security=True; pooling=False; multipleactiveresultsets=True; App=EntityFramework &quot;" providerName="System.Data.EntityClient" />

连接字符串实际上并不具有所有可笑的换行符和缩进 C 我只是想让它更容易阅读.无论如何,该连接字符串与在其建模的支持EF项目中使用的连接字符串基本相同.如何纠正这种情况,使“添加控制器”dialgoue快乐?

解决方法 我安装了EF 6,它补充说: <providers> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices,EntityFramework.SqlServer" /> </providers>

在我的配置文件.我有其他脚手架问题,所以决定退回到Ef 5.卸载EF 6并重新安装EF 5后,我从配置中删除,然后我能够构建我的新控制器.我用这个发现了

PM> Update-Database CVerbose

(编辑:莱芜站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章