[翻译]ASP.NET MVC
在今天,MVC(Model-View-Controller)设计模式与测试驱动开发方法(Test-Driven Development 简称TDD)被广泛应用于企业级WEB应用的开发中。MVC设计模式强制我们将应用分解成三个部分:模型(Model)负责业务数据的存储及管理,视图(View)负责呈现数据,并为用户提供与系统交互的界面接口,而控制器(Controller)则负责将用户动作转换成相应的业务数据集合传递给模型,或者将业务数据转换成相应的方式传递给视图。
使用MVC设计模式的一个最大的好处就是它简化了WEB应用开发中的TDD过程,因为它使我们避免了与复杂的图形用户界面(GUIs)交互。TDD需要开发者创建小粒度的单元测试用例,检测出执行失败的用例,编写代码以通过用例检测,最后要重构代码以应对需求变更。
直到2007年末,可用于ASP.NET的MVC框架只有开源框架MonoRail。而从2000年开始,Struts就成为Java平台上用于MVC架构的框架。PHP更是拥有十几种MVC框架。Ruby on Rails平台本身就自带了默认的MVC架构功能,并且其中包含一个"text/unit"库,用以整合单元测试功能。
在VS2002和VS2003中,Visual Studio开发小组仍然没有能为这个IDE提供单元测试功能和重构特性。终于,在VS2005的测试版中,单元测试功能(MSTest)被整合到这个IDE中,并且在VS2005的标准版和更高级版本中,为C#语言添加了重构机制。VS2008专业版及更高版本中也整合了MSTest,但是,在微软发布的VS2008和ASP.NET3.5中并没有提供对MVC的支持。
Tech Brief: Postback Model
前瞻
微软公司ASP.NET小组最新的副组长Scott Guthrie曾预测第一个基于ASP.NET3.5平台的MVC框架将于2007年10月诞生。那时,Guthrie曾承诺在来年的前半年里为ASP.NET提供完整的MVC特性。
紧接着,微软在12月份发布了一份MVC的社区技术预览(community technology preview 简称CTP),它是ASP.NET3.5扩展的一部分。这个扩展将包含ASP.NET动态数据(ASP.NET Dynamic Data),它是一个类似于Rails的脚手架(scaffolding)框架,这个技术使得快速开发基于数据驱动的MVC站点成为可能。基于SQL或基于实体的LINQ将作为模型的数据源。
本月早些时候,微软发布了ASP.NET MVC 预览版2,在这个预览版中,提供了MVC routing,并对测试功能进行了改进。另外,它还提供了VS2008开发环境中第一个支持MVC的模板,而且对动态数据进行了改进。
关键特性
根据Guthrie所讲,ASP.NET MVC框架的一些特性对Web开发人员非常重要,它包括以下几点:
1.NET MVC框架
相关文档:
使用flash开发的SWFUpload上传组件有很多好处,支持进度条是其中一种好处,下面是asp.net封装SWFUpload下载地址:
效果图:
如果直接拷贝SWFUpload文件夹到你的项目
记得必须引用SWFUploadAPI.dll
点击此处下载:SWFUpload.rar
文章来自学IT网:http://www.xueit.com/html/2010-05/21-12561321642010518215213640 ......
第一步 掌握一门.NET面向对象语言,C#或VB.NET 我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET。 ASP.NET是一个全面向对象的技术,不懂OO,那绝对学不下去!
第二步 对.NET Framework类库有一定的了解 可以通过开发Windows Form应用程序来学习.NET Framework。ASP.NET是建构在.NET Framework之上的 ......
方法一:<asp:LinkButton runat="server" ID="lbtnClick" PostBackUrl='<%#"~/test.aspx?id="+Eval("id")%>'>zhang</asp:LinkButton>
方法二:<asp:LinkButton runat="server" ID="lbtnClick" PostBackUrl='<%#Eval("id","~/test.aspx?id={0}")%>'>zhang</asp"LinkButton> ......
方法1
HttpFileCollection files = HttpContext.Current.Request.Files;
//我设置的大小不超过A4纸的缩略图
int newWidth=620;
int newHeight=880;
System.Drawing.Image img = null;
for(int iFile = 0; iFile < files.C ......
在BS项目中,某个aspx页面需要引用外部脚本文件,通过在页面head节<script language="" src="">方式引用指定的js之后,仍然无效。通过alert方式调试,发现是由于js文件编码与js文件内容不符。由于js文件中包含中文注释,所以需要设置js文件为可识别中文的gb2312编码。其方法在网上也讲述,以下为网摘内容:
&n ......