从零开始学习ASP.NET MVC 1.0 (一)

 从零开始学习ASP.NET MVC 1.0 (一)

 MVC1.0下载地址:http://www.microsoft.com/download/en/details.aspx?id=5388

博客园:http://kb.cnblogs.com/zt/mvc/

张知秋:http://www.cnblogs.com/zhangziqiu/archive/2009/02/27/ASPNET-MVC-1.html

重典deBlog:http://www.cnblogs.com/chsword/archive/2008/09/29/aspnetmvc_video.html

 http://kb.cnblogs.com/page/100217/

《从零开始学习ASP.NET MVC 1.0》 文章导航

通过对MVC的学习,我们可以看到MVC有如下特点:
1) 业务处理与显示分离:ASPX页面与CS代码彻底分离。更好的复用和维护。
2) 服务器端的表单控件不再被提倡使用,取而代之使用传统的input,或直接让Html.TextBox生成控件标签。
3) 没有了事件驱动模型。在ASP.NET MVC中,当某个按钮被点击,你不要再习惯性想到应该在相应的aspx.cs中有

个Click处理方法,你应该想到的是该有某个Controller中有个Action来处理这个事件。
4) 没有了数据绑定。如果你习惯了GridView的数据绑定,在ASP.NET MVC中则需要改变思路,你自己动手解决。
5) 增加了地址重写。MVC的Routing组件让我们可以很好的进行URL路由处理。
6) 总体来看,可以理解MVC是基于Web Form的一种编程方式模型扩展,是一种表示层的编程模型方案。

 

基于三层架构的MVC模式应用的完整示例项目源码下载

 

 今天正式开始自学MVC,开始万里长征的第一步,争取每天都有所进步。下面是我学习MVC的一些笔记,想让自己对MVC有个简单清晰地认识,也希望对于没有接触过MVC框架的园友有所帮助吧!(以下总结仅为个人的学习整理)

一.准备工作。

1.安装VS2008.

2.下载MVC安装包。(如果之前下载安装过不同版本的安装包,需要先卸载再安装。)

二.打开VS2008创建MVC项目。

1.默认应用工程的作用。

2.访问路径:http://IP地址:端口号/ControllerName/ActionName

注意:修改了cs类型的文件要重新生成。

三.MVC运行原理

客户端向Controller发起请求,调用Controller的路径函数。再将要显示的数据放在Views中,再在页面呈现。

而要与数据库打交道的时候才使用到Models,运用ORM(对象关系模型)很多情况在使用LinQ...。

四.实现Controller与Action之间的传值。

对象一:ViewDate

1)简单的字符串:

Controller:

View:

2)简单类型:

Controller:

Views:

3)简单对象。

赋值:ViewDate["Models"]=users;

取值:<% User user=ViewDate["Models"] as Users; %>或者 赋值用return View(users); 取值:页面引用该类型,再ViewDate.Models.属性值.

对象二:TempDate(与ViewDate不同的是,可以跨Action传值一次。用法大致与ViewDate一致)

常用之处:当一个Action中需要将Error抛出到另一个Action显示时。

五.重定向

1.Action中的的重定向。

1).在同一个Controller中:return RedirectToAction("ActionName");

2).不在同一个Controller中:return RedirectToAction("ActionName","ControllerName");

2.Global.asax文件中定义映射访问路径的规则。

六.Filter过滤器(在Action或者return View()之前/之后执行)

1.作用:

2.创建过滤器:

1)新建cs文件,继承ActionFilterAtrribute类.

2)控制Action运行之前:重写OnActionExecuting。一般用户是否登录,只有登录才能进入Action.

  控制Action运行之后: 重写OnActionExecuted.

  控制return View()之前:OnResultExeccuting.

  控制return View()之前:OnResultExeccuted.

3)使用Filter:如果是整个Controller中得Action都需使用,则在Controller上填上属性[Filter文件路径];如果只有某一个Action需要,则在该Action上添加Filter文件路径。

七.Helper(MVC不推荐使用服务器端控件,所以需要使用Helper显示数据)

1.HtmlHelper

1)超链接:<%=Html.ActionLink("连接显示文字","ActionName","ControllerName")%>

2)文本框,单选按钮,按钮...:<%=Html.TextBox("ID")%>  <%=Html.SubmitButton("id或name","显示文字")%> <%=Html.Password("ID")%>

3)输出时编码:<%=Html.Encode("")%>

4)单选框:

     <% foreach(string r in Html.RadioButtonList("name属性",数据源)) {%>   

         <%=s%>

     <%}%>

5)复选框:

    <% Html.CheckBox("name属性",值) %>复选

注意:Action中接收单选框或者复选框的值一定要保证Name与参数名一致。如果需要传递的参数有很多个,可以采用数组的方式接收。

     

2.UrlHelper

1)<%=Url.Action("ActionName","ControllerName",

         new {word="传值"},new {@class="链接中引用的方法"}    //匿名函数

   ) %>

2)<%=Url.Content("//显示文件的路径")%>

八.QueryString传值。(略)

九.表单生成和Post传值.

<% using(Html.Form("ControllerName","ActionName",FormMethod.Post)) {%>

   //表单内容...

<% }%>

Action获取表单:   Request.Form["表单元素ID"]或者直接在Action方法中添加参数。(注意:参数名要和表单元素ID一致.)

十.UpdateModel(Model,Request.Form.AllKeys);

不仅可以用户Post方式提交,也可以用于Get方式提交。

相对于Request.QueryString/Request.Form[".."]更具有智能性。

参考的视频教程地址:http://www.cnblogs.com/chsword/archive/2008/09/29/aspnetmvc_video.html

练就坚定的灵魂,争取蜕变。
 
成果案例:

 

 

===================================

基于三层架构的MVC模式应用示例源码

2009-6-8 21:30:54     (被阅读6099次)

ASP.NET MVC是微软官方提供的开源MVC框架. 在经过了漫长的preview和2个RC版本后, 终于发布了1.0正式版本。自从微软发布ASP.NET MVC框架1.0正式版,对于MVC的讨论就不绝于耳。
下面是基于原来标准三层结构,做一个基于三层架构的MVC模式应用的完整示例项目,开放源码。
该项目涉及如下几项要点应用:
 1) 整个解决方案基于标准的三层结构。
 2) 表示层采用MVC模式。
 3) 数据的增、删、改、查操作示例。
 4) 基于MVC的列表数据显示及分页处理。
 5) Linq的应用等。


搭建MVC开发环境:

.NET Framework 3.5 SP1  下载地址:
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=ab99342f-5d1a-413d-8319

-81da479ab0d7

VS.NET 2008 SP1  下载地址:
http://www.microsoft.com/downloads/details.aspx?familyid=27673C47-B3B5-4C67-BD99-

84E525B5CE61&displaylang=zh-cn

ASP.NET MVC框架1.0正式版下载地址:
http://www.microsoft.com/downloads/details.aspx?FamilyID=53289097-73ce-43bf-b6a6-

35e00103cb4b&displaylang=en

微软MVC官方网站:http://www.asp.net/mvc/

 

通过对MVC的学习,我们可以看到MVC有如下特点:
1) 业务处理与显示分离:ASPX页面与CS代码彻底分离。更好的复用和维护。
2) 服务器端的表单控件不再被提倡使用,取而代之使用传统的input,或直接让Html.TextBox生成控件标签。
3) 没有了事件驱动模型。在ASP.NET MVC中,当某个按钮被点击,你不要再习惯性想到应该在相应的aspx.cs中有

个Click处理方法,你应该想到的是该有某个Controller中有个Action来处理这个事件。
4) 没有了数据绑定。如果你习惯了GridView的数据绑定,在ASP.NET MVC中则需要改变思路,你自己动手解决。
5) 增加了地址重写。MVC的Routing组件让我们可以很好的进行URL路由处理。
6) 总体来看,可以理解MVC是基于Web Form的一种编程方式模型扩展,是一种表示层的编程模型方案。

 

基于三层架构的MVC模式应用的完整示例项目源码下载


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值