EntLib.com 开源博客平台

本博客平台专注于开源.Net 系统,如开源ASP.NET论坛、开源ASP.NET博客、开源ASP.NET电子商务平台(前台购物系统和后台业务处理系统),以及分享、交流Microsoft .Net平台的相关技术及企业架构设计,如.Net Framework、ASP.NET、C#、ADO.NET Entity Framework、MVC Framework、AJAX、LINQ、SQL Server、Service Broker、WCF/WF/WPF、BizTalk、ESB (Enterprise Service Bus)、SOA (Service-Oriented Architecture) 、Enterprise Library 等等。

EntLib.com 博客平台完全开放源码,欢迎访问论坛:
http://forum.EntLib.com
进行交流、分享。

Powered By:

统计信息

  • 博客: 101
  • 随笔: 212
  • 文章: 3
  • 评论: 503
  • 引用: 0

博客列表



最新评论


推荐技术专题


Enterprise Library 专题

ASP.NET MVC 专题
  Enterprise Library for .Net Framework 3.5 – EntLib v4.1 是patterns & practices 小组为.NET Framework 3.5 开发一套企业库,目前最新版本为v4.1,共包括9个Application Block,包括数据访问(Data Access Application Block)、异常管理(Exception Handling Application Block)、数据验证(Validation Application Block)等等,对企业应用开发非常有帮助,也非常实用。

查看详细信息...
  根据《Professional ASP.NET MVC 1.0》中微软牛人Scott Guthrie 提供免费下载的第一章,一步一步演示如何通过ASP.NET MVC 1.0 正式版创建NerdDinner 范例程序。对了解如何使用最新的ASP.NET MVC 1.0框架创建Web Application 非常有帮助。

查看详细信息...


首页最新随笔

转到页面:12345678910

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 19

ASP.NET MVC的一个设计理念是“Do Not Repeat Yourself”原则(通常称为DRY)。DRY设计帮助排除重复的代码和逻辑,让应用程序更快创建和更容易维护。
我们已经看到DRY原则应用在NerdDinner应用程序的一些方面了。如验证逻辑在Model层实现,在Controller的编辑和创建方法中均可执行;我们也跨越Edit、Details和Delete方法重用NotFound 视图模板;对View视图模板采用命名规范,这样在调用View() 辅助方法是不需要显式指定名称;另外在Edit和Create Action方法中重用DinnerFormViewModel类。
下面我们在View模板中应用DRY原则,减少重复的代码。
...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 18

本文进一步扩展DinnersController,实现丰富表单编辑功能。这里我们讨论2种方法,用来将数据从Controller传递到View:ViewData 和 ViewModel。
...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 17

Part 11-Part 17详细演示了如何实现Dinner对象的创建、更新和删除操作,最后进一步介绍了Model类绑定的一些细节特性和安全性,分为2部分:基于用途来锁定绑定(Locking down binding on a per-usage basis)和基于类型来锁定绑定(Locking down binding on a type basis)。 ...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 16

本文继续ASP.NET MVC学习之旅,一步一步通过ASP.NET MVC 1.0 实现NerdDinner 范例程序。
我们进一步扩展DinnersController类实现编辑、创建和删除Dinners记录,重点包括如下内容:
本文完整介绍了实现删除Dinner对象和持久化到数据库的过程,包括在Controller类实现HTTP-GET和HTTP-POST的Delete Action方法,以及View视图等等。
我们已经完成了Dinner对象的创建、更新和删除的所有操作。恭喜!!!欢迎持续关注http://forum.entlib.com 开源论坛小组提供的后续文章。
...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 15

本文继续ASP.NET MVC学习之旅,一步一步通过ASP.NET MVC 1.0 实现NerdDinner 范例程序。
我们进一步扩展DinnersController类实现编辑、创建和删除Dinners记录,重点包括如下内容:
本文完整介绍了实现创建Dinner对象和持久化到数据库的过程,包括在Controller类实现HTTP-GET和HTTP-POST的Create Action方法,以及View视图等等。
...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 14

本文继续ASP.NET MVC学习之旅,一步一步通过ASP.NET MVC 1.0 实现NerdDinner 范例程序。
我们进一步扩展DinnersController类实现编辑、创建和删除Dinners记录,重点包括如下内容:
1.理解ModelState 和验证HTML辅助方法
2.Html 辅助方法和ModelState的集成
3.Html.ValidationMessage()辅助方法
4.Html.ValidationSummary()辅助方法
最后实现了控制器中Edit的所有逻辑,包括HTTP GET和HTTP POST。 ...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 13

本文继续ASP.NET MVC学习之旅,一步一步通过ASP.NET MVC 1.0 实现NerdDinner 范例程序。
我们进一步扩展DinnersController类实现编辑、创建和删除Dinners记录,重点包括如下内容:
1.实现HTTP-POST的Edit Action方法
2.获取表单提交的值,演示了多种方法
3.处理编辑异常 ...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 12

本文继续ASP.NET MVC学习之旅,一步一步通过ASP.NET MVC 1.0 实现NerdDinner 范例程序。
我们进一步扩展DinnersController类实现编辑、创建和删除Dinners记录,重点包括如下内容:
1.DinnersController处理URL请求
2.实现HTTP-GET 编辑的Action方法
3.介绍了Html.BeginForm() 和 Html.TextBox() HTML辅助方法 ...... 阅读全文

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 11

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 11
 
本文根据《Professional ASP.NET MVC 1.0》中微软牛人Scott Guthrie 提供免费下载的第一章,一步一步演示如何通过ASP.NET MVC 1.0 正式版创建NerdDinner 范例程序。对了解如何使用最新的ASP.NET MVC 1.0框架创建Web Application 非常有帮助。本文由http://forum.entlib.com 开源论坛小组提供。关于本文的一些资源,请参考文章最后的链接。
 
前面系列文章:
 
本文继续学习之旅,一步一步通过ASP.NET MVC 1.0 实现NerdDinner 范例程序。
 
命名规范和\Views目录结构
默认情况下,ASP.NET MVC应用程序使用约定的目录命名和结构,来解析视图模板。开发人员在Controller控制器中引用视图时,不必指定完整的路径。ASP.NET MVC 将自动寻找应用程序中\Views\[ControllerName]\目录,并找到相应的视图模板文件。
例如,我们创建的DinnersController类 – 直接引用3个视图模板:Index / Details / NotFound。ASP.NET MVC 默认到应用程序的\Views\Dinners 目录下寻找这些文件。
 

 
从上图中,可以看到3个Controller控制器类(DinnersController、HomeController和AccountController),其中后面2个控制器是在创建项目时默认添加的,另外在\Views目录中有3个子目录,分别对应Controller类。
Home和Accounts控制器引用的视图会自动到相应的\Views\Home和\Views\Account 目录中寻找。\Views\Shared 子目录则用来存放共享的视图模板,可供多个控制器使用。ASP.NET MVC在解析一个视图模板时,首先检查\Views\[Controller] 特定目录,如果找不到,则继续到\Views\Shared 子目录中寻找。
 
关于对每一个视图模板的命名,建议的方法是视图模板保持和action方法相同的名称。例如,Index action方法使用Index视图来呈现视图结果,Details action方法使用Details 视图来呈现结果。这样,有助于很快知道哪一个视图模板和哪一个action方法关联。
 
当视图模板和控制器调用的action 方法有相同的名称时,开发人员可以不必显式指定视图模板的名称。我们仅仅需要传递模型对象给View() 辅助方法(不需要制定视图名称),ASP.NET MVC 将自动推断出我们使用的视图 \Views\[controllerName]\[ActionName],并展示结果。
这样,我们可以稍微简洁一些代码,避免在代码中重复view的名称。
 

 
上面的代码是实现Dinner列表和显示详细信息的全部代码。
 
http://forum.EntLib.com 开源小组注:前面1-11篇介绍了如何创建控制器、Model和视图,实现了Dinner列表和详细信息的展示。下一步,我们将进一步扩展DinnersController类,实现创建、编辑和删除的功能。
 
今天就到这里了,明天继续翻译ASP.NET MVC eBook – 开发NerdDinner 范例程序向导。欢迎访问http://blog.EntLib.com 博客平台获取更多的MVC学习资料。
 
相关资源下载链接:
1. ASP.NET MVC 1.0 正式版发布了!!!
 
2. 免费ASP.NET MVC eBook 向导-电子书下载

一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序,Part 10

本文根据《Professional ASP.NET MVC 1.0》中微软牛人Scott Guthrie 提供免费下载的第一章,一步一步演示如何通过ASP.NET MVC 1.0 正式版创建NerdDinner 范例程序。对了解如何使用最新的ASP.NET MVC 1.0框架创建Web Application 非常有帮助。

本文继续ASP.NET MVC学习之旅,本文重点是《实现Index视图模板》。
...... 阅读全文