欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » ASP.Net » 正文

热门阅读

鲜为人知的ASP.NET MVC 2.0框架高效之谜(1)

创建时间:2011年06月16日 22:53  阅读次数:(5554)
分享到:

【51CTO独家特稿】要想建立开发环境,你需要安装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实现。

创建MVC项目

图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”的新表。在该表中添加以下列。

  1. EmployeeName nvarchar(100)   
  2. EmployeeSalary numeric(18, 2)   
  3. EmployeeId int (Primary Key)   
  4. Department nvarchar(100)   
  5. Age int  
  6. Skillset nvarchar(1000)   
  7. 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,而无需编写存储过程来抓取数据。

编写查询类的SQL

图5

X[≒(W7b飠 

来源:
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论0条
  • 暂无任何评论,请留下您对本文章的看法,共同参入讨论!
发表评论:
留言人:
内  容:
请输入问题 1+93=? 的结果(结果是:94)
结  果: