Asp.net MVC + EF6.0 常常出现的问题

1.运行视图时出现问题:未能加载文件或程序集“EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)web

缘由:EntityFramework版本不一致时形成的。架构

解决办法:查看全部引用的EntityFramework版本是否一致(不一致时,尽可能不要修改实体中的EntityFramework版本)框架

2.System.InvalidOperationException”类型的异常在 EntityFramework.dll 中发生,但未在用户代码中进行处理其余信息: 在应用程序配置文件中找不到名为“OAEntities”的链接字符串。ide

缘由:Config没有对应的链接字符串spa

解决办法:查看实体中的App.config EF链接字符串是否在Web.Config中也有。字符串

3.指定的架构无效。错误 :  DataModel.ssdl(2,2) :  错误 0152:  未找到具备固定名称 “System.Data.SqlClient”的  ADO.NET  提供程序的实体框架提供程序。请确保在应用程序配置文件的 “entityFramework” 节中注册了该提供程序it

解决办法:io

 将如下代码添加至web.config配置文件中便可: < entityFramework >配置

    < providers >引用

      < provider   invariantName = " System.Data.SqlClient "   type = "System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer "  />

    </ providers >

</ entityFramework >

添加完以后又会出现如下问题: 

2.没法为具备固定名称“System.Data.SqlClient”的 ADO.NET 提供程序加载在应用程序配置文件中注册的实体框架提供程序类型“System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer”。请确保使用限定程序集的名称且该程序集对运行的应用程序可用。有关详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=260882。

解决办法:

为Web项目添加EntityFramework.SqlServer.dll的引用便可(可经过NuGet查找并引用)。

相关文章
相关标签/搜索