要想建立开发环境,你需要安装Visual Studio 2008/2010 Beta 2,以及SQL Express 2005(可免费从MSDN下载)和MVC 2.0框架。我把本文中的示例Web应用命名为“Employee Master Information”。51CTO-.NET频道向您推荐《ASP.NET MVC框架视频教程》以便于您更好的理解本文。
使用该应用程序,你可以输入新员工数据,编辑现有员工数据,可以查看特定员工数据,和从数据库中给删除任意员工信息。该应用程序还使用了ASP.NET的Membership Provider来创建新用户和认证已有用户,客户端验证通过JavaScript实现。
图1
创建MVC项目、数据库和数据模型
在此前的ASP.NET MVC 2.0文章中,我讨论过如何使用Visual Studio 2008编辑器来创建一个MVC Web应用程序。在本篇文章中我使用VS2008(.NET框架3.5)创建的项目名称为“MyMvcSample”。创建了MVC 2.0网站后,接下来将是创建数据库和数据模型。
图2
右键点击项目的“App_Data”文件夹,并向你的解决方案增加一个“SQL Server Database”对象。
如果你的开发环境中没有安装“SQL Express”,你不会在“Template”窗口中看到这个选项。
将SQL Express数据库的名称指定为MySampleDatabase.mdf,点击“Add”按钮后,一个新数据库将被添加到App_Data文件夹中。
现在从“View”菜单中打开“Server Explorer”;你将看到MySampleDatabase.mdf数据库已经存在。
右键点击该数据库下的“Tables”对象,增加一个名为“tblEmployee”的新表。在该表中添加以下列。
EmployeeName nvarchar(100)
EmployeeSalary numeric(18, 2)
EmployeeId int (Primary Key)
Department nvarchar(100)
Age int
Skillset nvarchar(1000)
Role nvarchar(50)
对于主键列,你需要修改两个属性:将“Identity Specification”的值从“No”改为“Yes”,
将“Identity Increment”从0改为1。表创建完后,增加一些示例数据以供测试用。
图3
接下来你需要创建一个数据模型,右键点击“Model”文件夹,并增加一个新条目。从模板列表中选择“ADO.NET Entity Data Model”。在本示例中我的模型名称为“DataModel.edmx”。点击增加按钮向你的解决方案添加该模型。接下来你将看到一个向导界面,它将指导你为刚才创建的模型增加数据源。选择“Generate from Database”并点击下一步。
接下来你需要选择合适的数据源,从列表中选择此前创建的“MySampleDatabase.mdf”,并为该数据源指定一个名称。在解决方案web.config文件下的“ConnectionStrings”标签下,你将看到一个自动生成的包含数据源名称和连接字符串的条目。在本例中我的连接名称是“MySampleDatabaseEntities”。接下来,检查tblEmployee,并向你的模型提供一个命名空间名称。
图4
在模型创建后,在模型查看器中打开DataModel.edmx。该查看器将帮助你查看模型数据源,以及模型和数据库之间的字段映射。使用模型查看器你还可以更改模型属性、字段名和数据类型。这个“Employee”模型将被在Controller类中使用,来增加、编辑和删除数据库中的员工详细信息。DataModel.edmx是一个ADO.NET Entity Framework对象,可以在进行插入、更新或删除数据时减少代码编写工作量。ADO.NET Entity Framework还支持LINQ,因此你可以在业务对象上编写查询类的SQL,而无需编写存储过程来抓取数据。
图5