VS2015 ASP.NET MVC5 EntityFramework6 Oracle 环境篇
//来源: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用户,导致数据访问失败。
原文地址:https://www.cnblogs.com/TNSSTAR/p/11589476.html
- 使用spark与MySQL进行数据交互的方法
- python分布式环境下的限流器
- commons-pool与commons-pool2连接池(Hadoop连接池)
- Glusterfs 文件系统
- 时过境迁:Oracle跨平台迁移之XTTS方案与实践
- Kazoo Python Zookeeper 选主
- Linux Redis集群搭建与集群客户端实现
- python使用上下文管理器实现sqlite3事务机制
- python服务端多进程压测工具
- 响应式js幻灯片代码一枚
- 使用深度学习检测面部特征,让实时视频聊天变得更有趣
- springboot 注册服务注册中心(zk)的两种方式
- 极速体验:Oracle 18c 下载和Scalable Sequence新特性
- springboot mybatis 事务管理
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Spring Boot 相关漏洞学习资料
- 口令爆破之突破前端JS加密
- 渗透测试之API测试技巧
- PC(C/S架构)客户端测试笔记
- 手把手教你使用Python开发飞机大战小游戏,4万字超详细讲解!
- Android通过URL文件下载及文件名提取
- PyTorch4:模块总览&torch.utils.data
- express处理文件上传
- 《机器学习》-- 第七章 朴素贝叶斯
- 【DIY数字仪表】RT-Thread移植touchgfx使用sd卡升级固件和图片资源(4)
- Transformers中的Beam Search高效实现
- 多边形裁剪图片升级啦!Cocos Creator !
- 使用curl进行服务器测试
- 打卡群刷题总结0805——不同的二叉搜索树
- 利用STS临时密钥服务快速搭建直传页面的实践