在前面的教程中,我们使用了一个简单的数据模型,包括三个数据实体.在这个教程汇中,我们将添加更多的实体和关系,按照特定的格式和验证规则等自定义数据模型. Contoso大学校园管理系统的数据模型如下.  一.修改学生实体 1.DataType Attribute using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; namespace ContosoUniversit…
Contoso University示例网站演示如何使用Entity Framework 5创建ASP.NET MVC 4应用程序. Entity Framework有三种处理数据的方式:  Database First ,  Model First , and  Code First . 本指南使用代码优先.其它方式请查询资料. 示例程序是为Contoso University建立一个网站.功能包括:学生管理.课程创建.教师分配. 本系列指南逐步讲述如何实现这一网站程序. 如有问题,可在这些讨…
在上一次的教程中,我们处理了关联数据问题.这个教程演示如何处理并发问题.你将使用Department实体创建一个页面,这个页面在支持编辑和删除的同时,还可以处理并发错误.下面的截图演示了Index页面和Delete页面,包括在出现并发冲突的时候提示的一些信息. 一.并发冲突 并发冲突出现在这样的时候,一个用户正在显示并编辑一个实体,但是在这个用户将修改保存到数据库之前,另外的一个用户却更新了同样的实体.如果你没有通过EF检测类似的冲突,最后一个更新数据的用户将会覆盖其他用户的修改.例如,一个大客…
在之前的教程中,我们已经完成了学校的数据模型.现在我们将读取和显示相关数据,请理解EF加载导航属性的方式. 一.Lazy.Eager.Explicit数据加载 使用EF为实体中的导航属性加载相关数据,有下面几种方法. 1.Lazy loading 当实体第一次读取时,相关数据并没有获得.然而当你第一次想要访问导航属性时,导航属性的相关数据会自动获得.这产生了多次访问数据库,一次是实体数据读取,一次是导航属性读取. 2.Eager loading 当实体读取时,相关数据也一起读取,使用Includ…
***操作视频下载:1     *** 在上一次教程中,你已经能够处理并发异常.这个教程将会展示如何在数据模型中实现继承. 在面向对象的程序设计中,你可以通过继承来清除冗余的代码.在这个教程中,你将要通过修改教师 Instructor 和学生 Student 类,以便使他们从包含类似 LastName 属性的 Person 类中派生.对于 Web 页面不需要任何改动,你需要修改一点代码,这些修改将会被自动反射到数据库中. 一.单表继承 (Table-per-Hierarchy)  vs 类型表…
在上一次的教程中,你已经使用继承来消除在 Student 和 Instructor 实体之间的重复代码.在这个教程中,你将要看到使用存储池和工作单元模式进行增.删.改.查的一些方法.像前面的教程一样,你将要修改已经创建的页面中代码的工作方式,而不是新创建的页面. 一.存储池和工作单元模式 存储池和工作单元模式用来在数据访问层和业务逻辑层之间创建抽象层.实现这些模式有助于隔离数据存储的变化,便于自动化的单元测试或者测试驱动的开发 ( TDD ). 在这个教程中,你将要为每个实体类型实现一个仓储类.…
**演练目的:掌握复杂模型的应用程序开发. Contoso大学校园管理系统功能包括学生.课程.教师的管理. 一.创建MVC Web应用程序 显示效果如下图,操作步骤略. 二.创建数据模型 1.创建学生实体 using System; using System.Collections.Generic; namespace ContosoUniversity.Models { public class Student { public int StudentID { get; set; } publ…
一.添加列标题排序功能 我们将增加Student/Index页面的功能,为列标题添加超链接,用户可以点击列标题对那一列进行排序. 1.修改Index方法 public ActionResult Index(string sortOrder) { ViewBag.NameSortParm = String.IsNullOrEmpty(sortOrder) ? "Name_desc" : ""; ViewBag.DateSortParm = sortOrder == &…
Contoso 大学 Web 示例应用演示了如何使用 EF 技术创建 ASP.NET MVC 应用.示例中的 Contoso 大学是虚构的.应用包括了类似学生注册.课程创建以及教师分配等功能. 这个系列教程展示了创建 Contoso 大学应用的步骤.你可以 下载完整 的程序,或者按照教程一步一步创建它,这个教程中使用 C# 进行演示,下载的代码中同时包含 C# 和 VB 实现.如果你有与这个教程没有直接相关的问题,可以张贴到 ASP.NET Entity Framework forum  或者…
原文 Contoso 大学 - 7 – 处理并发 By Tom Dykstra, Tom Dykstra is a Senior Programming Writer on Microsoft's Web Platform & Tools Content Team. 原文地址:http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/handling-concurrency-with-the-entity-framewo…