c# - 更新我的实体框架后,我收到错误“指定的架构无效”
问题描述
更新我的实体框架 edmx 时收到错误。
我正在使用实体框架数据库,首先是 ASP.NET MVC [VB.NET],一切都很好,直到这次我更新了实体,我不知从哪里得到了一个错误,我已经花了几个小时试图解决它.
我还必须提到,我们使用 [开发、登台和生产] 服务器来托管我们的数据库。
错误:
指定的架构无效。
Database.ProjDW.ssdl(2,72):错误 0169:所有 SSDL 工件必须针对同一个提供程序。ProviderManifestToken '2012' 与之前遇到的 '2008' 不同。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Data.Entity.Core.MetadataException:指定的架构无效。
错误:
Database.ProjDW.ssdl(2,72):错误 0169:所有 SSDL 工件必须针对同一个提供程序。ProviderManifestToken '2012' 与之前遇到的 '2008' 不同。
解决方案
经过几个小时的到处搜索后,我发现了这个问题,我将其发布,以防有人面临它不会像我一样受苦。
错误是因为:我有两个不同的服务器托管我的数据库,它们有不同的 SQL Server 版本。
解决方案:排除您的.edmx
文件并在记事本中打开它,然后编辑ProviderManifestToken
到正确的年份 - 所以对我来说是 2012 年,我将其更改为 2008 年,现在它又可以正常工作了:)
推荐阅读
- reactjs - @computed 方法在 react + mobx 中不起作用
- java - Android Studio / 如何将 SharedPreferenced 应用于我的代码
- python - 无法执行使用 PyInstaller 构建的 python 脚本
- c# - 列为空或为空的行的 DataTable Rowfilter 语法
- go - 如何正确使用 FirstOrCreate
- google-analytics - 有没有办法查看我的网站上每个月在 Google Analytics 上创建的网页数量?
- angular - Angular 6 一个项目中的多个应用程序 - 如何重定向到子应用程序
- r - 如何将(多页)pdf添加到rmarkdown?
- mapbox - 尝试使用 OSMesa 构建 mapbox 渲染示例应用程序并出现错误
- clojure - 在 Clojure 中四舍五入到列表中最接近的数字