ASP.MVC3.0中文版教程
MVC 3.0 的新特性(1)
我要学 MVC 3.0(一):MVC 3.0 的新特性摘要MVC经过其1.0和2.0版本的发展,现在已经到了3.0的领军时代,随着技术的不断改进,MVC也越来越成熟。
使开发也变得简洁人性化艺术化。
园子里有很多大鸟都对MVC了如指掌,面对问题犹同孙悟空的七十二变一般游刃有余,令人羡慕。
大鸟们的著作我们作为菜鸟看了又看,读了又读但是还是对MVC3.0的了解不是很深。
这种杯具的情况岂止是杯具呀,那简直就是杯具。
综合分析后得出结论:眼高手低!!!最后菜鸟痛定思过,决定从最基本的开始一步一步开始学习MVC 3.0 也希望想学习MVC3.0的小菜们分享一下下。
前言 MVC3 在 MVC 1 和2 的基础上,增加了大量的特性,使得代码更加简化,并且可以深度扩展。
这篇文章提供包含在此次发布中的许多新特性的说明,分为以下部分:∙Razor 视图引擎∙支持多视图引擎∙Controller 改进∙JavaScript 和Ajax∙Model 验证的改进∙依赖注入Dependency Injection 的改进∙其他新特性Razor 视图引擎 MVC3 带来了一种新的名为Razor 的视图引擎,提供了下列优点:∙Razor 的语法简单且清晰,只需要最小化的输入∙Razor 容易学习,语法类似于 C# 和VB∙Visual Studio 对于Razor 提供了智能提示和语法着色∙Razor 视图不需要允许程序或者启动 Web 服务器就可以进行测试Razor 现在提供了一些新的特征:∙@model 用来指定传到视图的Model 类型∙@* * 注释语法∙对于整个站点可以一次性设定默认项目,例如布局。
∙Html.Raw 方法提供了没有进行HTML 编码的输出∙支持在多个视图之间共享代码( _viewstart.cshtml 或者_viewstart.vbhtml ) Razor 还包含新的H TML Helper,例如:∙Chart. 生成图表∙WebGrid, 生成数据表格,支持完整的分页和排序∙Crypto,使用Hash 算法来创建Hash 和加盐的口令∙WebImage, 生成图片∙WebMail, 发送电子邮件如下示例代码:@model List<MvcMusicStore.Models.Album>@{ViewBag.Title = " MVC Music Store";}<div id="promotion"></div><h3><em>Fresh</em>off the grill</h3><ul id="album-list">@foreach (var album in Model){<li><a href="@Url.Action("Details", "Store",new { id = album.AlbumId })"><img alt="@album.Title"src="@album.AlbumArtUrl"/><span>@album.Title</span></a></li>}</ul>关于Razor 更多的资料,可以参考下面的资源:∙Scott Guthrie's blog post introducing Razor∙Scott Guthrie's blog post introducing the @model keyword∙Scott Guthrie's blog post introducing Razor layouts∙Razor API Quick Reference∙MVC 3 Release Notes支持多视图引擎在 MVC3 中,增加视图的对话框中允许你选择你希望的视图引擎,在新建项目对话框中,你可以指定项目默认的视图引擎,可以选择W ebForm,Razor,或者开源的视图引擎,例如:Spark, NHam l, 或者NDjango.选择视图引擎:控制器的改进全局的 Action 过滤器有的时候你希望能够在在一个Action 方法执行之前或者执行之后执行一些处理逻辑,在 MVC2 中,提供了 Action 过滤器,允许对特定控制器的Action 方法进行处理,实际上,有时候你希望对所有的Action 都进行类似的处理,MVC3 允许你将过滤器加入到GlobalFilters 集合中来创建全局的过滤器,详细的介绍,参考下列资源:∙Scott Guthrie's blog on the MVC 3 Preview∙Filtering in MVC新的 ViewBag 属性MVC2 中的控制器支持 ViewData 属性,允许通过后绑定的字典将数据传送给视图模板,在 MVC3 中,你可以通过 ViewBag 来更加简单的完成。
官方示例Music+Store(音乐商店)简易中文教程
MVC3官方示例Music Store(音乐商店)--简易中文教程前言:本文来源于微软MVC3官方教程.在可以下载到最新版本的源码和英文PDF教程.和英文教程一样,本文将分成十章节来介绍这个音乐商店的建立.导航目录:▪(一)前期准备,新建MVC项目▪(二)控制器▪(三)视图与模型▪(四)数据访问▪(五)使用脚手架功能创建编辑页面▪(六)使用Data Annotation为模型进行验证▪(七)成员和权限▪(八)Ajax刷新效果的购物车▪(九)注册和支付▪(十)最终版本修正与发布综述:原文:The MVC Music Store is a tutorial application that introduces and explains step-by-step how to use MVC and Visual Web Developer for web development. We’ll be starting slowly, so beginner level web development experience is okay.The application we’ll be building is a simple music store. There are three main parts to the application: shopping, checkout, and administration.翻译:MVC音乐商店是一个示例应用程序,它将一步一步介绍和说明如何使用 MVC和Visual Web Developer进行Web开发。
本教程会慢慢讲解,因此,即使你是一名初学者也没问题。
我们要开发的是一个简单的音乐商店,主要包括三个主要功能:购物,支付,管理。
原文:Visitors can browse Albums by Genre:翻译:访客可以根据专辑类别浏览唱片原文:They can view a single album and add it to their cart:翻译:可以查看单个唱片并且加入到购物车:原文:They can review their cart, removing any items they no longer want:翻译:可以查看购物车,并且移除不需要的商品:原文:Proceeding to Checkout will prompt them to login or register for a user account.翻译:支付订单的时候会提示用户注册或者登陆帐号。
ASP NET MVC程序设计教程教学大纲
《 MVC 程序设计教程》(第3版)课程教学大纲总学时:64 讲课学时:64 实验学时:32学分:3适用对象: 网络工程、软件工程、计算机科学与技术先修课程:C#程序设计,数据库系统原理一、课程简介本课分别介绍用 MVC开发Web应用程序的基本编程技术和Web API、OData、SVG、Canvas、WebGL以及Three.js等高级编程技术的基本概念和基本用法。
包括 MVC应用程序的创建,控制器、视图和模型的基本概念与使用,Web前端开发架构(Bootstrap),HTML5标记,CSS3样式控制,文档对象模型、JavaScript以及jQuery的基本用法,CSS动画和jQuery动画,实体框架与数据库操作,二维和三维图形绘制等。
在讲解理论的同时,配合实例演示,加深对所学知识的印象。
二、课程性质、目的和任务课程性质:本课程为专业选修课。
主要介绍Web前端开发技术(HTML5、CSS3.0、jQuery等)及 MVC Web应用程序开发等有关内容。
课程目的与任务:希望通过本课程的学习,掌握开发 MVC应用程序的基础知识和基本方法,掌握常见的页面布局和数据交互技术,对Web应用程序设计有一个全面的认识和了解,并能够独立开发Web应用程序。
三、教学基本要求在理论上学生学习本课程后,应能够掌握 MVC架构基本思想、C#语言的基本编程以及动态网页开发的基本技术。
在实践技能上能够利用 MVC技术进行比较深入的动态网页程序设计,并且有能力参与中大型网站项目的开发工作。
四、教学内容及要求第1章概述内容:介绍Web标准、网页的分类、MVC项目的创建和组织以及VS2013开发环境配置。
基本要求:理解Web标准和网页的分类,熟悉VS2013的安装以及基本使用方法,掌握新建一个 MVC应用程序的基本流程及布局页与主页的跳转。
第2章MVC编程预备知识内容:学习 MVC编程中的基本知识及常见的帮助器,以及Web前端开发架构Bootstrap 的基本用法。
Spring3.0 MVC 中文教程
Spring3 MVC - 3到Spring MVC框架简介Spring3 MVC框架简介Spring MVC是Spring的框架的Web组件。
它提供了丰富的功能,为建设强大的Web应用程序。
Spring MVC框架的架构,并在这样的高度可配置的方式,每一块的逻辑和功能设计。
此外Spring可以毫不费力地与其他流行的Web框架,如Struts,WebWork的,的Java Server Faces和Tapestry集成。
这意味着,你甚至可以告诉Spring使用Web框架中的任何一个。
比Spring更不紧耦合的servlet或JSP 向客户端呈现视图。
喜欢速度与其他视图技术集成,Freemarker的,Excel或PDF现在也有可能。
Spring3.0 MVC系列∙第1部分:到Spring 3.0 MVC框架简介∙第2部分:在Spring 3.0 MVC创建Hello World应用程序∙第3部分:在Spring 3.0 MVC的形式处理∙第4部分:Spring3 MVC的Tiles Support与Eclipse中的例子插件教程∙第5部分:Spring3 MVC的国际化及本地化教程与范例在Eclipse∙第6部分:Spring3 MVC示例教程Spring主题∙第7部分:创建Spring3 MVC Hibernate 3的示例在Eclipse中使用Maven的在Spring Web MVC,你可以使用任何对象作为命令或表单支持对象,你不需要实现框架特定的接口或基类。
Spring的数据绑定是高度灵活的:例如,将验证错误类型不作为应用系统错误,可以通过评估的不匹配。
因此,你不必重复你的业务对象的属性,简单的无类型的字符串,在表单对象仅仅是为了处理无效的意见,或正确转换的字符串。
相反,它往往是最好直接绑定到业务对象。
请求处理生命周期Spring的Web MVC框架是,像许多其他Web MVC框架,要求为导向,围绕一个中心的servlet,它把请求分派给控制器,提供其他功能,有利于开发Web应用而设计的。
ASP_NET_MVC3中文版教程
MVC3 快速入门第一节概述本教程的学习内容在本教程中,你将学会如下内容:如何创建一个MVC的工程。
如何创建MVC的控制器(controller)与视图(view)。
如何使用Entity Framework code-first 范例来创建一个新的数据库。
如何获取和显示数据。
如何编辑数据并且进行数据的有效性验证。
创建工程如果要创建一个MVC3的工程时,首先运行Visual Web Developer 2010 Express,并且在起始页(start page)中选择“新建项目”。
Visual Web Developer是一个集成开发环境,你可以使用它来进行各种应用程序的开发。
在Visual Web Developer的菜单的下面有一个工具条,可以直接点击工具条中的各个工具按钮来进行各种操作,也可以直接点击菜单中的各个菜单项来进行各种操作,此处我们点击“文件”菜单中的“新建项目”菜单项。
图1-1 Visual Web Developer 2010 Express中的起始页创建你的第一个应用程序你可以使用Visual Basic 或Visual C#作为开发语言来创建应用程序。
在本教程中,选择C#来作为开发语言。
点击“新建项目”菜单项后,在打开的“新建项目”对话框中,双击左边的“Visual C#”使其成为展开状态,然后点击“Web”,点击右边的“ MVC 3 Web 应用程序”,然后在下方的名称文本框中填入应用程序的名称,在本教程中命名为“MvcMovie”,然后点击确定按钮。
图1-2 在新建项目对话框中选择MVC3应用程序并为应用程序命名在接下来打开的“新MVC 3 项目”对话框中,点击选中“Internet 应用程序”,在“视图引擎”下拉框中保持默认的“Razor”选项不作修改(Razor视图是MVC3种新增的一种十分重要的视图类型,使用它可以使得Web应用程序的开发变得更加方便快捷,在后文中将对此进行详细介绍)。
ASP 3.0高级编程(四)
ASP 3.0高级编程(四)【摘要】本文介绍了ASP 3.0高级编程的一些重要知识点,包括Session和Application对象的应用、高级调试技巧、自定义组件的开发、数据库连接与操作,以及安全性和性能优化技巧。
通过深入学习这些内容,读者可以更好地应用ASP 3.0进行web开发,并提升项目的质量和效率。
Session和Application对象的灵活运用可以帮助我们在网站开发中实现用户状态的管理,高级调试技巧则可以帮助开发人员更快地定位和解决bug。
自定义组件的开发能够提高代码的复用性和可维护性,数据库连接与操作是web开发中不可或缺的部分,安全性和性能优化技巧则能够保障网站的稳定性和安全性。
ASP 3.0高级编程是提高web 开发技能的重要一环,希望读者通过本文的学习能够对ASP 3.0有更深入全面的理解。
【关键词】关键词:ASP 3.0高级编程,Session对象,Application对象,高级调试技巧,自定义组件,数据库连接,安全性,性能优化,总结。
1. 引言1.1 ASP 3.0高级编程(四)简介ASP 3.0是一种用于开发动态网站的服务器端脚本语言,它可以与HTML页面结合使用,实现网站的交互和动态性。
ASP 3.0高级编程是ASP的一个深入学习阶段,需要掌握更多的技巧和知识。
在本篇文章中,我们将重点介绍ASP 3.0高级编程的一些重要内容,帮助读者更好地理解和应用ASP 3.0技术。
在ASP 3.0高级编程中,我们将学习如何使用Session和Application对象来进行数据的存储和共享,实现用户之间的数据交互。
我们还将探讨高级调试技巧,帮助开发者更快地定位和解决问题。
我们还将学习如何开发自定义组件,扩展ASP的功能。
数据库连接与操作在网站开发中也是非常重要的一部分,我们将深入探讨如何使用ASP 3.0进行数据库连接和操作。
我们还将介绍一些安全性和性能优化技巧,帮助读者更好地保护网站信息安全和提升网站的性能。
3.1.3 控制器中常用的属性和对象[共6页]
"red,红色", "green,绿色", "blue,蓝色" }; ViewData["MyColors"] = myColors; ViewBag.MyColors = myColors; return PartialView(); } }
ViewData 属性是一个 System.Web.Mvc.ViewDataDictionary 对象,这是一个不区分大小写 的由“键/值”对组成的字典集合。或者说,集合中的每一个元素都由键(Key)和值(Value) 这一对内容来组成。
ViewBag 属性是 ViewData 属性的另一种表示形式,该属性返回的是一种动态数据类型 (dynamic),“动态”是指在编译时才处理这种数据类型。除此之外,ViewBag 和 ViewData 在功能上的作用完全相同,两者都是利用 ViewDataDictionary 对象传递数据到视图,使用时 任选其中之一即可。
但是,由于 ViewBag 的语法(用点“.”分隔)更符合 C#开发人员的习惯,所以大部分 开发人员还是喜欢用 ViewBag 属性来实现。这就像吃饭用筷子,有人习惯用左手,有人习惯 用右手,虽然筷子本身的功能是相同的,但无法明确界定哪种用法好哪种用法不好,只是大 部分人还是习惯用右手。
不过,有一种情况除外,就是当“键”包含空格等特殊字符时(如用英文人名作为“键” 时,中间会有空格),此时只能用 ViewData 属性来实现。
ASP.NET3.0高级编程(第5版)中文版
WPF 的一个主要特性是设计人员和开发人员的工作很容易分开。设计人员的工作成果 可以直接供开发人员使用。为此,必须理解 XAML。本章的第一个主题是概述 WPF,理解 XAML 的规则,讨论设计人员和开发人员如何合作。WPF 由几个包含了上千个类的程序集 组成。因此用户可以在这些类中浏览,查找需要的类,大致了解 WPF 中的类层次结构和 命名空间。
4. 附带属性
WPF 元素也可以从父元素中获得特性。例如,如果 Button 元素位于 Canvas 元素中, 按钮的 Top 和 Left 属性把父元素的名称作为前缀。这种属性称为附带属性:
<Canvas> <Button Canvas.Top="30" Canvas.Left="40"> Click Me! </Button>
public string SomeState {
get { return (string)this.GetValue(SomeStateProperty); } set { this.SetValue(SomeStateProperty, value); } } }
提示: 在 WPF 中,类 DependencyObject 位于层次结构的最高层。每个 WPF 元素都派生自这 个基类。
31 第
章
Windows Presentation Foundation
0
Windows Presentation Foundation(WPF)是.NET Framework 3.0 中的三个主要扩展之一。 WPF 是为智能客户应用程序创建 UI 的一个新库。Windows 窗体控件基于 Windows 内置控 件,利用了基于屏幕像素的 Windows 句柄。WPF 基于 DirectX。应用程序不再使用 Windows 句柄,更便于重新设置 UI 的大小,并内置了音频和视频的支持。
【2020最新智库】ASP.NETMVC3快速入门知识
MVC3快速入门-第一节概述(2011-02-2320:57:18)转载标签:web应用程序,分类:MVC31.1本教程的学习内容于本教程中,你将学会如下内容:•如何创建一个MVC的工程。
•如何创建MVC的控制器(controller)与视图(view)。
•如何使用EntityFrameworkcode-first范例来创建一个新的数据库。
•如何获取和显示数据。
•如何编辑数据且且进行数据的有效性验证。
1.2创建工程如果要创建一个MVC3的工程时,首先运行VisualWebDeveloper2010Express (本教程中简称“VisualWebDeveloper”),且且于起始页(startpage)中选择“新建项目”。
VisualWebDeveloper是一个集成开发环境,你可以使用它来进行各种应用程序的开发。
于VisualWebDeveloper的菜单的下面有一个工具条,可以直接点击工具条中的各个工具按钮来进行各种操作,也可以直接点击菜单中的各个菜单项来进行各种操作,此处我们点击“文件”菜单中的“新建项目”菜单项。
图1-1VisualWebDeveloper2010Express中的起始页1.3创建你的第一个应用程序你可以使用VisualBasic或VisualC#作为开发语言来创建应用程序。
于本教程中,选择C#来作为开发语言。
点击“新建项目”菜单项后,于打开的“新建项目”对话框中,双击左边的“VisualC#”使其成为展开状态,然后点击“Web”,点击右边的“MVC3Web 应用程序”,然后于下方的名称文本框中填入应用程序的名称,于本教程中命名为“MvcMovie”,然后点击确定按钮。
图1-2于新建项目对话框中选择MVC3应用程序且为应用程序命名于接下来打开的“新MVC3项目”对话框中,点击选中“Internet应用程序”,于“视图引擎”下拉框中保持默认的“Razor”选项不作修改(Razor视图是MVC3种新增的一种十分重要的视图类型,使用它可以使得Web应用程序的开发变得更加方便快捷,于后文中将对此进行详细介绍)。
form 元素_ASP.NET MVC程序设计教程(第3版)_[共6页]
145(7)响应式表格将任何具有【.table 】类的元素包裹在【.table-responsive 】中即可创建响应式表格。
响应式表格的含义是这种表格会自动在小屏幕设备上(小于768px )显示水平滚动条,当屏幕大于768px 宽度时,水平滚动条自动消失。
例如:<div class="table-responsive"><table class="table">...</table></div>5.3 表单和表单交互元素当用户通过网页以表单形式提交数据时,它所包含的界面交互元素都必须包含在form 元素的开始标记(<form>)与结束标记(</form>)之间,HTML5提供的常用界面交互元素有:input 元素、select 元素、datalist 元素、textarea 元素、label 元素等。
5.3.1 form 元素form 元素是其他界面交互元素的容器,用户和界面交互的内容一律保存在form 元素内。
1.method 特性form 元素的method 特性提供了多种提交表单的HTTP 数据传输方式,包括GET 、POST 、DELETE 、PUT 等,在这些传输方式中,最常用的有两种:GET 和POST 。
(1)GET 方式GET 方式也叫GET Method ,用于向服务器发送GET 请求,该方式通过URL 来传递用户请求的数据,同时将参数以字符串的形式存放在向服务器提交的URL 的后面。
form 默认采用GET 方式提交,也可以在form 的开始标记内显式添加method="get"。
例如:<form method="get" action="@Url.Action(...)">......</form>【例5-15】演示用GET 方式提交数据的基本用法,运行效果如图5-15所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MVC3 快速入门-第一节概述(2011-02-23 20:57:18)转载分类:MVC3标签:web应用程序1.1本教程的学习内容在本教程中,你将学会如下内容:∙如何创建一个 MVC的工程。
∙如何创建 MVC的控制器(controller)与视图(view)。
∙如何使用Entity Framework code-first 范例来创建一个新的数据库。
∙如何获取和显示数据。
∙如何编辑数据并且进行数据的有效性验证。
1.2创建工程如果要创建一个 MVC3的工程时,首先运行Visual Web Developer 2010 Express (本教程中简称“Visual Web Developer”),并且在起始页(start page)中选择“新建项目”。
Visual Web Developer是一个集成开发环境,你可以使用它来进行各种应用程序的开发。
在Visual Web Developer的菜单的下面有一个工具条,可以直接点击工具条中的各个工具按钮来进行各种操作,也可以直接点击菜单中的各个菜单项来进行各种操作,此处我们点击“文件”菜单中的“新建项目”菜单项。
图1-1 Visual Web Developer 2010 Express中的起始页1.3创建你的第一个应用程序你可以使用Visual Basic 或Visual C#作为开发语言来创建应用程序。
在本教程中,选择C#来作为开发语言。
点击“新建项目”菜单项后,在打开的“新建项目”对话框中,双击左边的“Visual C#”使其成为展开状态,然后点击“Web”,点击右边的“ MVC 3 Web 应用程序”,然后在下方的名称文本框中填入应用程序的名称,在本教程中命名为“MvcMovie”,然后点击确定按钮。
图1-2在新建项目对话框中选择 MVC3应用程序并为应用程序命名在接下来打开的“新 MVC 3 项目”对话框中,点击选中“Internet 应用程序”,在“视图引擎”下拉框中保持默认的“Razor”选项不作修改(Razor视图是 MVC3种新增的一种十分重要的视图类型,使用它可以使得Web应用程序的开发变得更加方便快捷,在后文中将对此进行详细介绍)。
图1-3选择项目模板与视图引擎点击确定按钮,Visual Web Developer会为你所创建的 MVC项目提供一个默认模板,这样的话你就拥有了一个可以立刻运行的应用程序。
默认的模板中提供的是一个很简单的显示“欢迎使用 MVC!”文字的应用程序,你可以以此作为你的开发起点。
图1-4 Visual Web Developer提供了一个默认的应用程序模板点击“调试”菜单中的“启动调试”菜单项(该菜单项的快捷键为F5),Visual Web Developer将启动一个内置的服务器,并且在该服务器中打开当前Web应用程序的主页,如图1-5所示。
图1-5 MVC3的默认应用程序模板的调试画面请注意该页面在浏览器中的地址为“http://localhost:4423/”。
其中“localhost”代表了本机上你刚刚创建的Web应用程序的临时网站地址,4423代表了Visual Web Developer使用的一个随机端口,每次调试的时候,Visual Web Developer都会使用这个端口来作为内置服务器的端口号。
在各计算机上,该端口号都是不相同的,因为该端口号是Visual Web Developer随机选择的。
在这个模板应用程序的页面的右上角,提供了两个按钮与一个“登录”链接,点击“登录”链接,页面跳转到登录页面,点击“主页”按钮,页面返回到主页,点击“关于”按钮,页面跳转到“关于”页面。
接下来,让我们开始逐步将这个默认的应用程序修改为我们所要的应用程序,在这个过程中逐步了解 MVC 3的有关知识。
首先,让我们关闭浏览器并开始代码的修改工作。
MVC3 快速入门--第二节添加一个控制器(2011-02-24 19:39:57)转载标签:分类:MVC3控制器杂谈MVC的全称为model-view-controller(模型-视图-控制器)。
MVC是一种开发应用程序的模式,这个模式已经具有了很好的框架架构,并且十分容易维护。
使用MVC开发出来的应用程序一般包括以下几块内容:∙控制器(Controller):控制器类处理客户端向Web应用程序发出的请求,获取数据,并指定返回给客户端,用来显示处理结果的视图。
∙模型(Model):模型类代表了应用程序的数据,这些数据通常具有一个数据验证逻辑,用来使得这些数据必须符合业务逻辑。
∙视图(View):视图类是Web应用程序中用来生成并显示HTML格式的服务器端对客户端请求的响应结果的模板文件。
在本教程中,将全面介绍这些概念,并且向你展示如何利用它们来搭建一个应用程序。
首先,让我们来创建一个控制器(controller)类。
在解决方案资源管理器中,鼠标右击Controllers文件夹,并且点击添加-〉控制器,如图2-1所示。
图2-1 添加控制器在弹出的“添加控制器”对话框中,将控制器命名为“HelloWorldController”,然后点击添加按钮,如图2-2所示。
图2-2 命名控制器观察解决方案资源管理器中新增加了一个文件,名字为HelloWorldController.cs,并且该文件呈打开状态,如图2-3所示。
修改打开的HelloWorldController.cs文件,在HelloWorldController类中,创建如代码清单2-1中所示的两个方法,控制器将返回一个HTML格式的字符串。
代码清单2-1 在控制器中创建方法public class HelloWorldController : Controller{//// GET: /HelloWorld/public string Index(){return "这是我的<b>默认</b>action...";}//// GET: /HelloWorld/Welcome/public string WelCome(){return "这是我的Welcome方法...";}}在这个修改后的HelloWorldController控制器中,第一个方法名为Index。
现在让我们从浏览器中调用该方法。
运行应用程序(按F5键或Ctrl+F5键),在打开的浏览器中的地址栏后面,添加“HelloWorld”路径(譬如,在我的计算机上,浏览器中地址为http://localhost:4423/HelloWorld),画面显示如图2-4所示。
由于在Index方法中,直接返回了一个HTML格式的字符串,所以在浏览器中将该字符串显示出来。
图2-4 HelloWorldController控制器中Index方法的运行结果在 MVC中,可以根据浏览器中的输入地址来调用不同的控制器或控制七种不同的方法。
MVC的默认的映射逻辑使用如下所示的格式来决定应该调用什么控制器或控制器中的什么方法。
/[Controller]/[ActionName]/[Parameters]URL地址的第一部分决定调用哪个控制器类,所以“/HelloWorld”映射到HelloWorldController控制器类。
第二部分决定调用控制器中的哪个方法。
所以“/HelloWorld/Index”将会调用HelloWorldController控制器类的Index方法。
由于Index方法是控制器类的默认方法(可以另外指定控制器类的默认方法),所以也可只输入“/HelloWorld”来调用该方法。
在浏览器的地址栏中,输入“http://localhost:xxxx/HelloWorld/Welcome”,将会调用HelloWorldController控制器类的Welcome方法,该方法返回“这是我的Welcome方法...”文字,所以浏览器中显示该文字,如图2-5所示。
图2-5 HelloWorldController控制器中Welcome方法的运行结果接下来,让我们修改Welcome方法,以便在URL地址栏中可以传递一些参数给该方法(例如:/HelloWorld/Welcome?name=Scott&numtimes=4)。
修改后的代码如下所示。
注意这里我们使用了C#的可选参数,当URL地址中没有使用numtimes参数时,该参数被默认设定为1。
public string Welcome(string name,int numTimes=1){return HttpUtility.HtmlEncode("Hello " + name + ",NumTimes is:" + numTimes);}运行该应用程序,在浏览器中输入“http://localhost:xxxx/HelloWorld/Welcome?name=Scott&numtimes=4”,运行结果显示如图2-6所示。
浏览器自动将URL地址栏中的参数映射成Welcome方法中的传入参数。
图2-6 在Welcome方法中使用参数到现在为止,我们展示了MVC中的“VC”(视图与控制器)部分的工作机制,控制器返回HTML字符串。
很显然大多数情况下你不想让控制器直接返回HTML字符串,因为那样的话编码起来就太麻烦了。
所以我们需要使用不同的视图模板文件来帮助生成HTML格式的页面文件,在下一节中让我们来看一下如何在 MVC3中使用视图。
MVC3 快速入门-第三节添加一个视图(2011-02-26 18:58:25)转载标签:视图模板应用程序控制器分类: ASP .NETMVC3 3.1 添加一个视图在本节中我们修改HelloWorldController 类,以便使用视图来向客户端展示HTML 格式的响应结果。
我们使用 MVC3中新增的Razor 视图引擎来创建视图。
Razor 视图模板文件的后缀名为.cshtml,它提供了一种简洁的方式来创建HTML 输出流。
Razor 视图大大减少了在书写视图模板文件时所需要输入的字符,提供了一个最快捷,最简便的编码方式。
这里,我们在HelloWorldController 类的Index 方法中添加使用一个视图。
在修改前的Index 方法中返回一个字符串,我们修改这个方法来使它返回一个视图,代码如下所示。
public ActionResult Index(){return View();}这段代码表示Index 方法使用一个视图模板来在浏览器中生成HTML 格式的页面文件。
接着,让我们来添加一个Index 方法所使用的视图模板。