学习ASP.NET MVC(四)——我的第一个ASP.NET MVC 实体对象
今天我将根据数据库中的表结构添加一些类。这些类将成为这个ASP.NET MVC应用程序中“模型”的一部分。
我们使用Entity Framework(实体框架)来定义和使用这些模型类,并且访问数据库。实体框架 (EF) 是一种对象关系映射机制,支持 .NET 开发人员使用特定对象来处理关系数据。它消除了开发人员通常需要编写大部分数据访问代码的工作,所以也称为代码优先开发模式。使用实体框架 ,可以将自定义数据类与数据模型一起使用,而无需对数据类本身进行任何修改。 这意味着可以将“纯旧式”CLR 对象
(POCO)与数据模型一起使用。 这些 POCO 数据类(也称为“永久性未知对象”)映射到数据模型中定义的实体,它们支持与实体数据模型 工具生成的实体类型相同的大多数查询、插入、更新和删除行为。
一、添加实体类
在Visual Studio 的“解决方案资源管理器”中,右键单击Models文件夹,选择“添加—>类”。如下图。
在弹出对话框中输入类名的“Book”。 添加以下七个属性到Book类:
public class Book { public int BookID { get; set; } public string Category { get; set; } public string Name { get; set; } public int Numberofcopies { get; set; } public int AuthorID { get; set; } public decimal Price { get; set; } public DateTime PublishDate { get; set; } }
我使用Book类来表示数据库中的Books表中的一行记录。Book对象的每个实例都将对应数据库表(Books)中的一行数据,并Book类的每个属性将映射到表中的各个列。
在同一文件中,添加BookDBContext类,代码如下:
public class BookDBContext : DbContext { public DbSet<Book> Books { get; set; } }
这个BookDBContext类代表实体框架的书籍表(Books)的内容,它对数据库中Books表进行增加、修改、删除、查询的操作。这个BookDBContext继承自Entity Framework的DbContext基类。
为了能够使用DbContext和的DbSet两个类,你需要在文件的顶部添加以下语句:
using System.Data.Entity;
下面的完整Book.cs文件如下所示。
using System; using System.Data.Entity; namespace MvcApplication1.Models {
public class Book { public int BookID { get; set; } public string Category { get; set; } public string Name { get; set; } public int Numberofcopies { get; set; } public int AuthorID { get; set; } public decimal Price { get; set; } public DateTime PublishDate { get; set; } }
public class BookDBContext : DbContext { public DbSet<Book> Books { get; set; } }
二、创建SQL Server连接字符串
刚才创建的BookDBContext类主要功能是连接数据库和映射数据库表记录,实现CURD。如何连接到指定数据库将呢?通过在Web.config文件中增加数据库连接信息。
首先,打开应用程序的根目录下的Web.config文件。 如下图。
Web.config文件中的<connectionStrings>元素中默认会有一个连接,如下图。
我们要做的是要把下面的连接字符串添加到Web.config文件中的<connectionStrings>元素中
<add name="BookConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=Test;Integrated Security=SSPI"
providerName="System.Data.SqlClient" />
添加了新的连接字符串的Web.config文件的一部分,如下图。
只要写以上少量的代码和在Web.config文件中写一下配置信息,就完成了对数据库CURD操作的所有功能代码。
在下一篇文章中,我将会创建一个用于显示书籍信息的列表页面,同时能进行新建、修改、删除、查询操作的BookController类。
学习ASP.NET MVC(四)——我的第一个ASP.NET MVC 实体对象的更多相关文章
- 学习ASP.NET MVC(七)——我的第一个ASP.NET MVC 查询页面
在本篇文章中,我将添加一个新的查询页面(SearchIndex),可以按书籍的种类或名称来进行查询.这个新页面的网址是http://localhost:36878/Book/ SearchIndex. ...
- 学习ASP.NET MVC(一)——我的第一个ASP.NET MVC应用程序
学习ASP.NET MVC系列: 学习ASP.NET MVC(一)——我的第一个ASP.NET MVC应用程序 学习ASP.NET MVC(二)——我的第一个ASP.NET MVC 控制器 学习ASP ...
- 学习ASP.NET MVC(五)——我的第一个ASP.NET MVC CURD页面
在上一篇文章中我们已经创建了实体类,在这一篇文章中,我将创建一个新的控制器类——BookController,使用BookController对Books表中的数据进行CURD操作的方法,并使用视图模 ...
- 学习ASP.NET MVC(三)——我的第一个ASP.NET MVC 视图
今天我将对前一篇文章中的示例进行修改,前一篇文章中并没有用到视图,这次将用到视图.对于前一个示例中的HelloWorldController类进行修改,使用视图模板文件生成HTML响应给浏览器. 一. ...
- 学习ASP.NET MVC(二)——我的第一个ASP.NET MVC 控制器
MVC全称是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范,用一种业务逻辑和数据显示分离的方法组织代码,将 ...
- 学习ASP.NET MVC(六)——我的第一个ASP.NET MVC 编辑页面
在上一文章中由Entity Framework(实体框架)去实现了对数据库的CURD操作.在本篇文章中,主要是调试修改自动生成的动作方法和视图,以及调试编辑功能与编辑功能的Book控制器. 首先,在V ...
- 初入码田--ASP.NET MVC4 Web应用之创建一个空白的MVC应用程序
初入码田--ASP.NET MVC4 Web应用开发之一 实现简单的登录 初入码田--ASP.NET MVC4 Web应用开发之二 实现简单的增删改查 2016-07-29 在此之前,需要一台电脑( ...
- 7、ASP.NET MVC入门到精通——第一个ASP.NET MVC程序
本系列目录:ASP.NET MVC4入门到精通系列目录汇总 开发流程 新建Controller 创建Action 根据Action创建View 在Action获取数据并生产ActionResult传递 ...
- ASP.NET MVC入门到精通——第一个ASP.NET MVC程序
开发流程 新建Controller 创建Action 根据Action创建View 在Action获取数据并生产ActionResult传递给View. View是显示数据的模板 Url请求→Cont ...
随机推荐
- java设计模式之-----桥接模式
一.概念定义 将抽象部分和实现部分分离,使他们都可以独立的变化.(这句话有点抽象啊..) 在软件系统中,某种类型由于自身逻辑,具有多个维度的变化,如何利用面向对象的技术来使得该类型沿着多方向变化,而又 ...
- UVaLive 7143 Room Assignment (组合数+DP)
题意:有 n 个客人,m个房间,每个房间可住ci个人,这 n 个人中有 t 对双胞胎,sum{ci} = n 问你有多少种住房方法. 析:计数DP,dp[i][j] 表示前 i 个房间,还剩下 j ...
- ODBC,OLEDB,ADO,ADO.net,JDBC 理解
一 .ODBC 开放式数据库互联(Open Database connectivity), 93年微软推出的实现应用程序 和关系数据库直接 通讯的借口标准.只能用于关系数据库 . 注意事项 : 必须先 ...
- 使用git svn clone迁移svn仓库
使用git svn clone迁移svn仓库 clone命令可以指定很多参数,主要用到这些,你也可以使用git svn help查看完整的参数列表. git svn clone https://172 ...
- JDK和环境配置
1. JASE : J2SE 这个就是我们现在在学的东西,他是一切Java的核心基础 JAME :J2ME : 他是Java的一个微型版,主要用来做移动开发 JAEE :J2EE Java企业版本,主 ...
- 关于Unity -Vuforia -Android 开发 ,平台的搭建(极品菜鸟完整版)
一.首先安装 java jdk , 度娘 “JDK” 进入官网下载即可,链接如下: http://www.oracle.com/technetwork/java/javase/downloads/jd ...
- Irrlicht 鬼火
1.下载引擎 2.引入头文件 在VS2010下新建项目,项目->属性->配置属性->VC++目录 在包含目录中:添加 引擎安装目录\include\ 在库目录中:添加 引擎安装目录\ ...
- linux-dns服务器搭建
1.先查看系统是否安装了bind rpm -qa|grep bind 2.如果没有安装则
- Replication的犄角旮旯(九)-- sp_setsubscriptionxactseqno,赋予订阅活力的工具
<Replication的犄角旮旯>系列导读 Replication的犄角旮旯(一)--变更订阅端表名的应用场景 Replication的犄角旮旯(二)--寻找订阅端丢失的记录 Repli ...
- SQL Server选取本周或上一周数据
有关SQL Server中有关周的数据查询主要思路来自下面这个语句 select getdate(), dateadd(wk, datediff(wk, 0, DateAdd(Day,-1,getda ...