//来源:https://www.cnblogs.com/lauer0246/articles/9576940.html

Asp.Net MVC EF各版本区别

2009年發行ASP.NET MVC 1.0版

2010年發行ASP.NET MVC 2.0版,VS2010

2011年發行ASP.NET MVC 3.0版+EF4,需要.Net4.0支持,VS2011

2012年發行ASP.NET MVC 4.0版+EF5,需要.Net4.0支持,VS2012

2013年發行ASP.NET MVC 5.0版+EF6,需要.Net4.5支持,VS2013

2015年發行ASP.NET MVC 6.0版+EF7,需要.Net5.0支持,VS2015

ASP.NET 5.0      将改名为  ASP.NET Core 1.0

ASP.NET MVC 6     将改名为  ASP.NET MVC Core 1.0

Entity Framework 7.0    将改名为  Entity Framework Core 1.0

详细区别见:https://www.cnblogs.com/liangxiaofeng/p/5840754.html

1、MVC环境配置

打开VS2015新建ASP.NET WEB程序,选择.NET Framework4.5(此时对应的MVC版本为5.0)

然后选择MVC,创建MVC架构的web项目。

如果没有mvc选项,则说明没有安装MVC5,解决方法:

在VS中打开Nuget控制台,输入
Install-Package Microsoft.AspNet.Mvc -Version 5.0.0

等待安装完成。

2、EntityFramework6环境配置

新建web项目完成后,展开项目引用列表,如果有EntityFramework,则说明项目已包含EntityFramework包,并且可以查看属性,确认使用的EF版本

如果没有该引用项,需要安装。打开菜单栏“工具”->NuGet包管理器->管理解放方案的NuGet程序包

打开包管理器后,选择浏览页面,输入entityframework,选中EntityFramework,勾选当前项目,点击安装即可。

安装完成后,引用列表里会自动添加EntityFramework和EntityFramework.SqlServer项。

为单个项目添加引用EntityFramework:Install-Package EntityFramework -Version 6.0.0.0

3、Oracle EntityFramework6环境配置

与EntityFramework配置类似,在NuGet包管理器中输入oracle,搜索支持Oracle的EntityFramework包

选中Oracle.ManagedDataAccess.EntityFramework,再勾选当前项目,点击安装,自动安装Oracle.ManagedDataAccess和Oracle.ManagedDataAccess.EntityFramework2个包。

安装完成后,引用列表会出现这2项。同时会自动在项目根目录下的web.config中添加相关的配置项。

注意:默认添加的配置项,会报错:oracle.manageddataaccess.client有重复配置,注释掉上面的一行oracle.manageddataaccess.client问题解决。

4、oracle EF调用

配置Web.Config中的OracleDbContext项,connectionString为数据库的用户名,密码,数据库地址

在Model文件夹新建数据库访问类OracleDbContext(类名可自定义,但必须与web.config中connectionStrings下的名称一致)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity; namespace MvcOracle.Models
{
public class OracleDbContext : DbContext
{
private readonly static string Connection_String = "name=OracleDbContext";
public OracleDbContext()
: base(Connection_String)
{
Database.SetInitializer<OracleDbContext>(new CreateDatabaseIfNotExists<OracleDbContext>());
} protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.HasDefaultSchema("LYDXHF");//LYDXHF为数据库用户名
     }      public DbSet<GG_ZTXXB> listGG_ZTXXB { get; set; }//GG_ZTXXB为数据表实体类
  } 
}

如果不指定数据库用户名,EF会自动默认访问dbo用户,导致数据访问失败。

VS2015 ASP.NET MVC5 EntityFramework6 Oracle 环境篇的更多相关文章

  1. (菜鸟要飞系列)一,基于Asp.Net MVC5的后台管理系统(前言)

    今天真是个郁闷的日子,因为老师两个星期前给我的一个任务,用递归算法将Oracle数据库中用户信息及权限显示在jquery-treeView上,网上虽然有大神写出了这类算法,但是不贴全部代码,真的很难跟 ...

  2. 技术的正宗与野路子 c#, AOP动态代理实现动态权限控制(一) 探索基于.NET下实现一句话木马之asmx篇 asp.net core 系列 9 环境(Development、Staging 、Production)

    黄衫女子的武功似乎与周芷若乃是一路,飘忽灵动,变幻无方,但举手抬足之间却是正而不邪,如说周芷若形似鬼魅,那黄衫女子便是态拟神仙. 这段描写出自<倚天屠龙记>第三十八回. “九阴神抓”本是& ...

  3. 在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移

    在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移 最近发布的ASP.NET MVC 5 及Visual ...

  4. ASP.NET MVC5+EF6+EasyUI 后台管理系统(88)-Excel导入和导出-主从表结构导出

    前言 前面一篇详细讲解了导入导出,本节演示混合结构的导出功能!同时提供代码下载.. 代码下载 vs2015+无数据库 先看效果图:这个一个混合的Excel,列表与自定义信息的混合! 我们的步骤大概分为 ...

  5. 构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(66)-MVC WebApi 用户验证 (2)

    前言: 构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(65)-MVC WebApi 用户验证 (1) 回顾上一节,我们利用webapi简单的登录并 ...

  6. ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-前言与目录(持续更新中...)

    开发工具:VS2015(2012以上)+SQL2008R2以上数据库  您可以有偿获取一份最新源码联系QQ:729994997 价格 666RMB  升级后界面效果如下: 任务调度系统界面 http: ...

  7. Linux(CentOS 6.5)下配置Mono和Jexus并且部署ASP.NET MVC5

    1.开篇说明 a. 首先我在写这篇博客之前,已经在自己本地配置了mono和jexus并且成功部署了asp.net mvc项目,我也是依赖于在网上查找的各种资料来配置环境并且部署项目的,而其在网上也已有 ...

  8. ASP.NET MVC5 PagedList分页示例

    ASP.NET MVC是目前ASP.NET开发当中轻量级的Web开发解决方案,在ASP.NET MVC概述这篇译文当中,已经详细的介绍了ASP.NET MVC与Web Forms的区别以及各自的适用场 ...

  9. 一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](一)

    前言 大家好,我是Rector 从今天开始,Rector将为大家推出一个关于创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar]的文章系列, ...

随机推荐

  1. gson 带泛型的转换

    json转对象 public static <T> T json2Obj(String json, Class<T> cls) { Gson gson = new Gson() ...

  2. sql server len函数

    len函数 --返回字符表达式中的字符数 --如果字符串中包含前导空格和尾随空格,则函数将它们包含在内 --LEN对相同的单字节和双字节字符串返回相同的值 --示例:select LEN('no'), ...

  3. tasks.json 配置 解决vscode控制台乱码问题

    { "version": "2.0.0", "command": "dotnet", "tasks" ...

  4. MySQL存储引擎知多少

    MySQL是我们经常使用的数据库处理系统(DBMS),不知小伙伴们有没有注意过其中的“存储引擎”(storage_engine)呢?有时候面试题中也会问道MySQL几种常用的存储引擎的区别.这次就简短 ...

  5. 谈谈对this的指向问题

    普通函数中:this——window 定时器:this——window 构造函数中:this——当前实例化的对象 事件处理函数:this——事件触发对象

  6. css样式水平居中和垂直居中的方法

    水平居中(包含块中居中) 1. 定宽,左右margin为auto.(常规流块盒.弹性项目[不用定宽]) 例子:在box1盒子上设置宽,再设置margin:auto: <style> .bo ...

  7. Python基础教程之dict和set

    1. dict Python中的dict等于js中的 map ,使用键-值(key-value)存储,具有极快的查找速度. 如果 我们要根据同学的姓名去查找他的成绩在不用dict的情况下.就需要两个l ...

  8. 多线程编程-- part5 锁的种类以及辨析

    java中的锁,可以分为同步锁和JUC包中的锁. 同步锁 通过synchronized关键字进行同步,实现对竞争资源的互斥访问的锁,. 原理:对于每一个对象,有且只有一个同步锁,在同一时间点,所有的线 ...

  9. Android系统修改之葡萄牙沃达丰One Net服务问题处理

    客户反馈的葡萄牙沃达丰的OneNet服务问题 Vodafone Portugal have a service (One Net) for enterprise customers that used ...

  10. Java泛型:利用泛型动态确认方法返回值类型

    根据泛型类型动态返回对象 public <T extends PackObject> T unPackMessage(String interfaceCode, String respVa ...