ASP.NET MVC3开发-数据库篇之CodeFisrt开发(一)
本文讲述了在ASP.NET MVC3开发中M层使用Code Fisrt如何进行开发,由于作者对ASP.NET MVC3的学习不是很深,所以写的都是些基本的内容(写的如有不正确的地方请评论指正),适合初学者学习,学习完本系列教程您将会使用ASP.NET MVC3进行一些简单系统的开发。
任何数据库开发首先要建立数据库连接,建立连接之前首先要创建数据库,本文就不讲解如何创建数据库了,假设您已经创建了一个数据库,使用Code Fisrt开发时建立数据库连接很简单,只需要在ASP.NET MVC3项目的Model文件夹下创建一个继承自DbContext的类(本文创建的类名:)即可,类的名字一定要与web.config配置文件里面连 接字符串的名字一致,这样建立数据库连接操作就完了,数据库连接上之后需要将数据库里面的表格跟程序里面的类做映射。
作者原创,转载请标明:http://www.kwstu.com/ArticleView/admin_201394171739208
一、连接数据库
Web.config连接字符串配置如下:
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-InfoAcquTerminal-20130904155708;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-InfoAcquTerminal-20130904155708.mdf" />
<add name="KzrcwDbContent" connectionString="User Id=用户名;Password=密码;Data Source=ip/SANYC;" providerName="Oracle.DataAccess.Client" />
</connectionStrings>
namespace InfoAcquTerminal.Models
{
public class KzrcwDbContent : DbContext
{
public DbSet<SYS_USER> SYS_USER { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Configurations.Add(new SYS_USERMapping());
base.OnModelCreating(modelBuilder);
}
}
}
1、<add name="KzrcwDbContent"这里的名字一定要和类名一致。
2、public DbSet<SYS_USER> SYS_USER { get; set; }这个就相当于数据库里面的表格,只要数据库里面有的表都要一一建立一个dbset,SYS_USER这个就是我数据库中的表格,不过使用之前首先要针对 数据库里面的表格创建一个实体类,创建时注意数据库中字段类型一定要与类中属性的类型想对应。我的SYS_USER类定义如下:
public class SYS_USER
{
public SYS_USER() { }
public string ID { set; get; }
public string USER_NAME { set; get; }
public string USER_PASSWORD { set; get; }
public string USER_FULLNAME { set; get; }
public string USER_TYPE { set; get; }
public string USER_POWER { set; get; }
public string USER_SCOPE { set; get; }
public string USER_SCOPE2 { set; get; }
public string USER_SCOPE3 { set; get; }
}
3. modelBuilder.Configurations.Add(new SYS_USERMapping());调用下面内容中创建的类。
二、类和数据库中表的映射
映射时需要创建一个继承自EntityTypeConfiguration类,具体代码如下:
public class SYS_USERMapping : EntityTypeConfiguration<SYS_USER>
{
public SYS_USERMapping()
{
ToTable("TS.SYS_USER");
}
}
本文完。
源码下载(开发环境VS2012 for web):http://www.kwstu.com/ResourcesView/admin_201394171532580
ASP.NET MVC3开发-数据库篇之CodeFisrt开发(一)的更多相关文章
- iOS开发数据库篇—SQLite简单介绍
iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1 ...
- iOS开发数据库篇—SQL
iOS开发数据库篇—SQL 一.SQL语句 如果要在程序运行过程中操作数据库中的数据,那得先学会使用SQL语句 1.什么是SQL SQL(structured query language):结构化查 ...
- iOS开发数据库篇—SQL代码应用示例
iOS开发数据库篇—SQL代码应用示例 一.使用代码的方式批量添加(导入)数据到数据库中 1.执行SQL语句在数据库中添加一条信息 插入一条数据的sql语句: 点击run执行语句之后,刷新数据 2.在 ...
- iOS开发数据库篇—SQLite的应用
iOS开发数据库篇—SQLite的应用 一.简单说明 在iOS中使用SQLite3,首先要添加库文件libsqlite3.dylib和导入主头文件. 导入头文件,可以使用库中的函数(是纯C语言的) 二 ...
- IOS开发数据库篇—SQLite模糊查询
IOS开发数据库篇—SQLite模糊查询 一.示例 说明:本文简单示例了SQLite的模糊查询 1.新建一个继承自NSObject的模型 该类中的代码: // // YYPerson.h // 03- ...
- iOS开发数据库篇—SQLite常用的函数
iOS开发数据库篇—SQLite常用的函数 一.简单说明 1.打开数据库 int sqlite3_open( const char *filename, // 数据库的文件路径 sqlite3 * ...
- iOS开发数据库篇—FMDB简单介绍
iOS开发数据库篇—FMDB简单介绍 一.简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来 ...
- iOS开发数据库篇—FMDB数据库队列
iOS开发数据库篇—FMDB数据库队列 一.代码示例 1.需要先导入FMDB框架和头文件,由于该框架依赖于libsqlite库,所以还应该导入该库. 2.代码如下: // // YYViewContr ...
- 【转】 iOS开发数据库篇—SQLite简单介绍
开始学SQLite啦, 原文: http://www.cnblogs.com/wendingding/p/3868893.html iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中 ...
随机推荐
- 基于Jquery的多彩二维码的生成
Demo效果图: 源代码: @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name=&quo ...
- 前端学习笔记(zepto或jquery)——对li标签的相关操作(二)
对li标签的相关操作——8种方式获取li标签的第一个元素的内容 1.alert($("ul>li").first().html());2.alert($('ul>li' ...
- javascript继承—继承的实现原理(1)
原文:javascript继承-继承的实现原理(1) 打算针对js的继承写一系列文章,详细的分析js里继承原理,实现方式,各种继承方式的优缺点,以及最优继承方案,还有多继承的问题等…. 面向对象的编程 ...
- C++中的class
C++中的class是C++不同于C的关键所在: 是面向对象中声明的类: 公有成员public member 在程序的不论什么地方都能够被訪问实行信息隐藏的类将 其publ ...
- Excel 宏
实现1到40行的第一列 ,全部 累加一个字符串 A1 Sub Macro1() Dim i As IntegerFor i = 1 To 40Sheets(1).Cells(i, 1).Value = ...
- 10. IDENTITY属性使用小结
原文:10. IDENTITY属性使用小结 从SQL Server 2012开始有了Sequence,简单用列如下: CREATE SEQUENCE TestSeq START INCREMENT ; ...
- 互联网创业应该如何找到创意 - RethinkDB创始人Slava Akhmechet的几点建议
关于作者 我叫Slava Akhmechet,本人是 RethinkDB 的创始人之一,RethinkDB是一个设计来帮助开发者和运营团队来处理无结构数据的一个开源的分布式数据库,用户可以使用它来作为 ...
- Android的5样的调试信息
Android的5样的调试信息 华清2014-10-23 北京海淀区 张俊浩 verbose:只是滤全部的信息. 啰嗦的意思. debug:debug调试的意思. info:一般提示的信息inf ...
- HDU 2079-课程时间(生成函数)
课程时间(标题已被修改,注意阅读题) Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- 解决Postman发送post数据但是Node.js中req.body接收不到数据的问题[已解决]
之前编写后台接口,测试数据都是使用的Postman,相当的方便,之前也一直使用get方法,编写Node.js一直没有问题,但是由于要编写一个注册/登陆的功能,所以发送的post数据,后台的逻辑已经编写 ...