ASP.NET 中的设计模式之MVC篇
ASP.NET 中的设计模式之MVC篇
ASP.NET
中的设计模式之
MVC
篇
设计模式
MVC
页面控制器
模板与
Page
基类
设计模式
软件开发中,软件复用和团队协作都一直是最为人们关注的重要问题之一。有趣的是,这两个似乎属于软件工程范畴的问题都有一个共同的技术方面的解决之道:设计模式。
在这里,笔者无意对设计模式的含义进行过多介绍或者严格定义,只是给一个比较简单的理解:设计模式是对一些经常出现问题的一种解决方式,这种解决方式来自于许多开发人员的经验总结。
MVC—WEB
开发中最基本的设计模式
在经典的设计模式书籍中,常用的设计模式有二三十种。就
WEB
应用程序开发来说,
MVC
可能是最基本的一种设计模式了。的确,
WEB
应用程序有一些特有的问题,瘦客户端
、不连续的状态、对友善界面的关注,以及愈来愈多的终端设备
…
。
MVC
将程序功能分成三部分考虑:视图
(VIEW
,即可见的用户界面部分
)
、模型(
Model
,程序的数据模型和业务逻辑部分),控制器(
Controller
,根据用户输入通知模型和视图进行相应更改)。
MVC
将
WEB
应用程序的一个页面分成若干部分,当对其中的一部分修改时,另外一部分可能只需要很少的变动甚至保持原样,使得应用程序对需求变化的适应性更好。
此外,
WEB
应用程序往往既要实现美观的用户界面,又要实现精确复杂的商务逻辑,然而并不是所有的人都能同时做好这两件事情。有了
MVC
,开发团队成员间的协作就比较容易了。
ASP.NET
中的
MVC
ASP.NET
对
MVC
提供了支持。编写代码隐藏的网页时,程序代码被分为两部分:
.ASPX
页面文件和一个单独的类文件
(.CS
文件
)
。
在图
1
所示的例子中,用户从下拉框选择图书类别,提交后,列出该类别下的书籍清单。
图
1
示例
视图
此例子的
View
部分在
.ASPX
文件中:
<%
@ Page language
=
"
c#
"
Codebehind
=
"
WebForm1.aspx.cs
"
AutoEventWireup
=
"
false
"
Inherits
=
"
TempSite.WebForm1
"
%>
<
HTML
>
<
HEAD
><
title
>
BookView
</
title
></
HEAD
>
<
body
>
&nb
相关文档:
· 第一:
private void Button1_Click( object sender, System.EventArgs e )
{
Response.Redirect( Request.Url.ToString( ) );
}
第二:
private void Button2_Click( object sender, System.EventArgs e ......
<SCRIPT LANGUAGE="javascript">
<!--
window.open ('page.html')
-->
</SCRIPT>
因为着是一段javascripts代码,所以它们应该放在<SCRIPT LANGUAGE="javascript">标签和</script>之间。<!-- 和 -->是对一些版本低的浏览器起作用,在这些老浏览器 ......
$.ajax({
type: "POST", //访问WebService使用Post方式请求
......
利用JQuery的$.ajax()可以很方便的调用asp.net的后台方法。
先来个简单的实例热热身吧。
1、无参数的方法调用
asp.net code:
using System.Web.Script.Services;
[WebMethod]
public static string SayHello()
{
return "Hello Ajax!";
}
注意:1.方法一定要静态方法,而且要有[WebMethod]的声明
JQuery ......
MVC自带的ActionFilter
在Asp.Net WebForm的中要做到身份认证微软为我们提供了三种方式,其中最常用的就是我们的Form认证,需要配置相应的信息。例如下面的配置信息:
<authentication mode="Forms">
<forms loginUrl="Login.aspx" defaultUrl="Default.aspx" protection="All" />
</authenticati ......