MvcScaffold快速开发实例

Scaffold在Mix11上Scott Hanselman介绍了如何使用它,你如果安装了Asp.net Mvc 3 Update tool后可以使用它的部分功能。

刚才在Twitter上收到David Fowler的回复,

image

所以如果你看到这个提示时,记得使用EntityFramework.SqlServerCompact代替EFCodeFirst.SqlServerCompact.

这里我给大家介绍下如何在Nuget下如何使用它。。 在阅读这篇文章之前,先说明下,如果你的英文阅读还行的话,建议直接关闭这个tab,Smile ,来这里直接阅读系列文章吧。

This blog post is part of a series about the MvcScaffolding NuGet package:

  1. Introduction: Scaffold your ASP.NET MVC 3 project with the MvcScaffolding package
  2. Standard usage: Typical use cases and options
  3. One-to-Many Relationships
  4. Scaffolding Actions and Unit Tests
  5. Overriding the T4 templates
  6. Creating custom scaffolders
  7. Scaffolding custom collections of files

如果你现在的页面还没有跳转,很高兴,你会阅读我接下来的一些胡言乱语。

首先我们创建一个mvc3项目。。。。。。试着添加一个Model。

 

image

等等,先提醒下未安装asp.net mvc 3 update tool的朋友们,看看上面的截图,方框的东西是update tool中新增的东西。。。。

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=82cbd599-d29a-43e3-b78b-0f863d22811a&displaylang=en

 

1.首先得先安装mvcscaffold。。。

我喜欢使用Package Manager Console来添加,当然你可以右键引用。。。

image

在项目的文件下可以看到刚才添加的package,

image

 

2.创建Model,生成增删改查页面。

image

 

如果是按照以前的开发方式,你需要创建数据访问部分,不管是linq2sql, linqtoef,或者其他的等等。。然后创建Controller,对应的View,包括CUID部分等等。

 

我们试试使用MvcScaffold来完成上面这些功能//////.

还是使用Package Manager Console来完成:

image

 

Code-First属性,Controller和View部分都自动添加完成。

试试运行下。

image

额,,报错了。。。因为我没安装Sql Server Express..如果你安装了SQL Server Express的话,你将可以去增删改查。

 

那我没安装SQL Server Express怎么办呢,我甚至不想使用庞大的SQL Server,还好,我们可以使用EF Code-First访问SQL Server Compact。

 

3.安装EFCodefirst.SqlServerCompact

神奇的NuGet帮我们做了很多事情,同样的我们使用它来安装EF Code-First to SqlServerCompact。

image

 

WebActivator,EFCodeFirst和SqlServerCompact都安装好了。

image

 

记住这个命令。。。。

 

MvcScaffold自动创建好了Repository,修改了Controller和View部分。

image

 

 

 

 

 

 

 

 

 

我们再次运行下,新增Post的页面如下:

image

 

点击Create后,页面跳转:

image

 

Perfect。。。。

你可以修改MvcScaffold的T4模板,或者自定义T4模板,添加其它的PowerShell命令等。。你可以去我文章前面提供的链接查看,或者去mix11的第二天视频找Scott Hanselman的session。我忘了session Id 了。

 

当然如果你有写的好的模板,可以留言,一起分享下。。。

 

Smile ~~~~~

 

 

 

你可能感兴趣的:(快速开发)