MVC 基架不支持 Entity Framework 6 或更高版本 即 NuGet的几个小技巧

MVC 基架不支持 Entity Framework 6 或更高版本。有关详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=276833。

原因:mvc版本过低,ef版本过高

解决方法:1.从NuGet 卸载 ef 6.1

工具- 库程序包管理器 - 程序包管理控制台

输入PM> Uninstall-Package EntityFramework –Version 6.1.3 -Force

2.修改原语句 Install-Package <程序包名> –Version <版本号>

输入PM>  Install-Package EntityFramework –Version 5.0.0

NuGet的几个小技巧

因为可视化库程序包管理器的局限性,有很多需要的功能在界面中无法完成。

以下技巧均需要在“程序包管理器控制台”中使用命令来完成。

一、改变项目目标框架后,更新程序包

当改变项目的目标框架后,无论是升级还是降级,都会导致项目中引用的组件不是最合适此框架下的版本,NuGet会自动出现一个警告提示重新更新一下组件,如何操作是指向了一个英文页面,这里就直接把页面中的关键部分拿过记录下来:

更新命令:Update-Package –reinstall <程序包名>

二、强制卸载某程序包(不管是否有依赖项)

此条其实是和下面一条合起来构成“将指定程序包降级到指定版本”。因为降级首先要卸载程序包,但是由于有可能会被其他包依赖造成无法卸载,这时可以使用下面的命令来强制卸载某程序包,不会影响其他依赖项。

强制卸载:Uninstall-Package <程序包名> -Force

三、安装指定程序包版本

默认通过图形界面安装的都是程序包的最新版本,但是有时候因为兼容性的问题,可能并不想要最新版本的程序包,这时候就可以通过以下命令来安装指定版本的程序包。

安装指定版本:Install-Package <程序包名> –Version <版本号>

其中的版本号可以通过程序包在NuGet上的页面来获取:/">http://www.nuget.org/packages/<程序包名>/

在控制台中操作时,请注意所操作的项目,以免发生莫名其妙的问题:

时间: 2024-10-09 23:07:47

MVC 基架不支持 Entity Framework 6 或更高版本 即 NuGet的几个小技巧的相关文章

MVC 基架不支持 Entity Framework 6 或更高版本

MVC 基架不支持 Entity Framework 6 或更高版本.有关详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=276833. PS:新做一个小型系统时,在开始打框架的时候的碰到的. 查阅了下,在我们辛勤工作的时候,EF已经升级了从EF5已经更新到了EF6了.NuGet程序包更新的时候直接更新到最新版了. 我的VS2012 最高也才MVC4 所以悲剧的不兼容了. 结论就是 MVC4+EF5  或者 MVC5+EF6 调低版本吧. 步骤如下

仅当使用 Microsoft .NET Framework 4 或更高版本时,才支持对 x64 进程进行混合模式调试

低于 4 的 .NET Framework 版本不支持对 x64 进程进行混合模式调试. 这意味着,当您进行调试时,无法从托管代码单步执行到本机代码,也无法从本机代码单步执行到托管代码. 问题解决 更新项目,使其使用 Microsoft .NET Framework 4 或更高版本. - 或 - 在单独的调试会话中调试托管代码和本机代码. - 或 - 作为 32 位进程调试混合代码,如下面的过程所述. 将平台更改为 32 位(Visual Basic 或 C#) 在"解决方案资源管理器"

Linux + Mono 目前已经支持Entity Framework 6.1

在上个随笔 CentOS上 Mono3.2.8运行ASP.NET MVC4经验中,步骤2中要求卸载EF 5.0,这样才能在Linux + Mono的环境中运行ASP.NET MVC4的Web应用.今天,没有卸载EF 5.0的情况下,使用NuGet新安装了EF 6.1.0,如下图(使用VS012英文版), 图1: 新安装了Entity Framework 6.1.0,同时EF5.0没有卸载,可在图片中看到两个EF共存 图1中的这个网站是一个接近完成的完整网站,在其它各项配置都与 CentOS上 M

创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表

创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添加一个User类: namespace MyFirstApp.Models { public class User { public int ID { get; set; } public string Name { get; set; } public string Email { get; se

MVC显示详细记录Without Entity Framework

看过此篇<MVC用非Entity Framework将数据显示于视图(二)>http://www.cnblogs.com/insus/p/3364482.html 了解到把数据库中数据表的数据显示于视图上.某一情况,我需要点击一下记录,能查看到其详细的数据. 在MVC实现这样的功能,其实也是很简单的.我们可以先在数据库中创建一个存储过程([dbo].[usp_FruitCategory_GetByPrimarykey]): 传入记录的主键值,来获取记录.去修改Models目录下的FruitCa

Entity Framework底层操作封装V2版本(5)

这个框架到现在最大的变化马上就要出现了,哪就是对缓存的使用.因为系统经常要去读取数据库数据,但是大家知道,数据库的处理能力是有限的,所以对于一些数据量不大,但是又 需要经常去读取的功能来说,更好的方法就是使用缓存. 上面4的方法是不适用缓存的 using System; using System.Collections.Generic; using System.Linq; using System.Text; using JFrame.AccessCommon; using System.Da

Entity Framework底层操作封装V2版本(1)

因为同志们一直给我提建议说,以前发的版本有问题.所以经过了我这一年多的使用和扩展,现在方法基本稳定了.现在贴出来给大家使用: 首先上场的是数据库操作层: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Linq.Expressions; using System.Data.Objects.DataClasses; using System.Refl

Entity Framework底层操作封装V2版本(2)

这个类是真正的数据库操作类,上面的那个类只是调用了这个封装类的方法进行的操作 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Linq.Expressions; using System.Data.Entity; using System.Data.Linq; using System.Data.Objects; using System.Refl

Entity Framework底层操作封装V2版本(3)

现在是附加的,组合查询需要的扩展类.大家知道lanmda表达式的组合条件比较麻烦,所以就加了一样一个类,方便进行组合查询: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Linq.Expressions; namespace JFrame.AccessCommon { public static class PredicateExtensions