本文讲述了在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>
KzrcwDbContent类的内容如下:
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");
}
}
以上代码将程序中的SYS_USER类映射到数据库中的SYS_USER表格。

本文完。

源码下载(开发环境VS2012 for web):http://www.kwstu.com/ResourcesView/admin_201394171532580

ASP.NET MVC3开发-数据库篇之CodeFisrt开发(一)的更多相关文章

  1. iOS开发数据库篇—SQLite简单介绍

    iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1 ...

  2. iOS开发数据库篇—SQL

    iOS开发数据库篇—SQL 一.SQL语句 如果要在程序运行过程中操作数据库中的数据,那得先学会使用SQL语句 1.什么是SQL SQL(structured query language):结构化查 ...

  3. iOS开发数据库篇—SQL代码应用示例

    iOS开发数据库篇—SQL代码应用示例 一.使用代码的方式批量添加(导入)数据到数据库中 1.执行SQL语句在数据库中添加一条信息 插入一条数据的sql语句: 点击run执行语句之后,刷新数据 2.在 ...

  4. iOS开发数据库篇—SQLite的应用

    iOS开发数据库篇—SQLite的应用 一.简单说明 在iOS中使用SQLite3,首先要添加库文件libsqlite3.dylib和导入主头文件. 导入头文件,可以使用库中的函数(是纯C语言的) 二 ...

  5. IOS开发数据库篇—SQLite模糊查询

    IOS开发数据库篇—SQLite模糊查询 一.示例 说明:本文简单示例了SQLite的模糊查询 1.新建一个继承自NSObject的模型 该类中的代码: // // YYPerson.h // 03- ...

  6. iOS开发数据库篇—SQLite常用的函数

    iOS开发数据库篇—SQLite常用的函数 一.简单说明 1.打开数据库 int sqlite3_open( const char *filename,   // 数据库的文件路径 sqlite3 * ...

  7. iOS开发数据库篇—FMDB简单介绍

    iOS开发数据库篇—FMDB简单介绍 一.简单说明 1.什么是FMDB FMDB是iOS平台的SQLite数据库框架 FMDB以OC的方式封装了SQLite的C语言API 2.FMDB的优点 使用起来 ...

  8. iOS开发数据库篇—FMDB数据库队列

    iOS开发数据库篇—FMDB数据库队列 一.代码示例 1.需要先导入FMDB框架和头文件,由于该框架依赖于libsqlite库,所以还应该导入该库. 2.代码如下: // // YYViewContr ...

  9. 【转】 iOS开发数据库篇—SQLite简单介绍

    开始学SQLite啦, 原文: http://www.cnblogs.com/wendingding/p/3868893.html iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中 ...

随机推荐

  1. django中通过model名字获取model

    django1.6, 通过字符串和get_app.get_model获得对应的object 只需要两行代码: from django.db.models import get_model get_mo ...

  2. Oracle缓存机制

  3. Swift语言指南(四)--类型安全和类型推断

    原文:Swift语言指南(四)--类型安全和类型推断 Swift是一门类型安全语言,类型安全语言需要代码里值的类型非常明确.如果你的代码中有部分值需要String类型,你就不能错误地传递Int. 鉴于 ...

  4. mysqldump报错

    在使用mysqldump命令备份整个数据库的时候,报错例如以下: mysqldump: Couldn't execute 'SHOW TRIGGERS LIKE 'userlog'': Got err ...

  5. TextView随键盘弹出上移高度

    很多时候我们都在为键盘遮挡了原本就不大的屏幕时而烦恼,特别是当用户处于编辑状态时,键盘下面的内容就看不见了,用户只能处于盲打状态了.现在有一种简单的解决办法,基本思路就是,添加通知.一直监听键盘事件, ...

  6. 使用SqlBulkCopy导入数据至MS SQL Server

    原文:使用SqlBulkCopy导入数据至MS SQL Server Insus.NET一直使用表类型来数据入MS SQL Server.参考<存储过程参数为DataTable>http: ...

  7. sql性能

    ---正在运行的 select a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT   from v$session a, v$sqlarea b where a ...

  8. yii中登录后跳转回登录前请求的页面

    当我们请求一个经过权限控制的请求不通过时,会跳转到一个地方请求权限,请求结束后需要跳转回之前的页面.比如我们请求一个需要登录的action,会被跳转到login页面,我们希望登录成功后跳转到我们之前希 ...

  9. 算法如功夫——C++ 用递归函数计算n的阶乘n!

    算法如功夫,套路练久了,才干应用自如! 学功夫不能死练,知其所以然,取长补短! #include <iostream.h> int main(int argc, char* argv[]) ...

  10. sql点滴41—MyISAM 和 InnoDB 讲解

    原文:sql点滴41-MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基本的差别为:MyISAM类型 ...