文章类型: .NET
关键词: C#,aspx,ASP.NET,MVC,初识
内容摘要:

进入ASP.NET MVC的世界

2015/7/29 12:17:58    来源:apple    阅读:

ASP .NET MVC.NET Web开发中的重要框架之一

这篇文章主要讲解以下内容:

ü         会搭建ASP.NET MVC项目

ü         理解ASP.NET MVC程序的执行过程

ü         会使用ASP.NET 中的系统对象

ü         会使用内嵌语法编写视图

ü         会使用母版视图

 

常见的Web服务器端开发技术主要有:JSPASP.NETPHP

ASP.NET的特色和优势:易于调试、运行效率高等

具体编译过程为:通过对于微软的.NET开发语言编写源代码(譬如使用C#语言编写源代码),再通过其对应的编译器(C#语言编译器)将源代码翻译为微软中间语言代码(即MSILIL),再通过即时编译器(Just in timeJIT)翻译为对于平台的机器语言代码。可以通过下面的流程图加以描述:

代码→编译→MSILIL编译(通过JIT)→机器语言

开发的网站案例有:dell销售官网、当当书店网站、一网通、我的空间、微软官网等。

MVC的运行过程为:用户通过浏览器的URL向服务器发出请求,通过服务器的MVC的路由机制进行解析,从而决定请求由哪个控制器的动作(Action)来响应请求,如果解析失败,则URL请求失败,否则执行对应的控制器的动作。然后由控制器的Action来与Model进行数据的交换,将返回的数据信息交由视图View来呈现出来,再返回到用户端的浏览器显示出来。

 

MVC下的Global.asax 文件位于应用程序的根目录下面,用于处理应用程序级事件的文件。

MVC下的App_Start文件夹,放置应用程序启动执行的代码文件 ,由Global.asax文件调用。

支持ASP.NETWeb服务器有开发服务器,即ASP.NET Development ServerIIS Express。还有一个是正式服务器,即站点发布后的服务器,IISInternet Information Server)。

 

ASP.NET MVC中的默认规则:

1、  文件命名和位置规则,控制器以Controller结尾,且处于Controllers目录中;

2、  每一个控制器对应于一个视图次级目录,且位于Views固定的主目录下,次级目录的名字和控制器的名字相同。

3、  可选规则,视图名和动作方法名相同。

 

ASP.NET有两种视图引擎,即经典的ASPX视图引擎和高效简洁的Razor视图引擎。

经典的ASPX视图引擎类似于经典WebASPX页面语法规则。

 

下面的ASPX视图引擎的脚本如下:

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage"

      ContentType="text/html; charset=utf-8" %>

<%@ Import Namespace="MvcDemo.Helpers"   %>

<html>

         <head><title>计算求和</title></head>

         <body>

           两个数的求和结果为:

           <%

               int numA = 4, numB = 5 ;

               int result = numA+numB;

             %>

            <%=result %>

         </body>

</html>

 

其中的第一行为@Page指令,用于对当前的视图页面的说明,语言为“C#”,当前页面继承自“System.Web.Mvc.ViewPage”,页面的内容类型和字符集等

下面即为html的标准标签框架,里面可以使用符号“<% …%>”,用于表示小脚本,相当于服务器端代码,下面的“<%=result %>”表达式表示输出result的值

 

ASPX视图其他语法规则

u       定义方法或全局变量

     <script runat="server">

   c#代码

 </script>

u       注释

     <!-- html注释-->

     <%-- 代码块--%>

    <% //单行注释 %>

    <%  /*多行注释 */ %>

小结:ASP.NET MVC 程序的技术要素有哪些?

即:路由、控制器、视图、过滤器、配置文件等。

 

ASP.NET中的系统对象:RequestResponseSeverSessionCookieApplication

其中SessionCookieApplication为状态保持对象

 

*         Request对象的使用:

1、  获取表单数据:

string 变量名 = Request.Form["表单字段名"];

 

2、  获取URL参数值:

string 变量名 = Request.QueryString["URL参数名"];

 

3、  获取Cookie数据:

string 变量名 = Request.Cookies[Cookie的名称].Value;

*         Response对象的使用:

1、  页面重定向:

Response.Redirect("URL");

 

2、  写入Cookie

Response.Cookies.Add(Cookie 对象);

 

3、  写入内容:

Response.Write("字符串");

 

*         Session对象的使用:

1、  记录用户会话:

Session["键名"] = 对象;

 

2、  使用会话数据:

对象类型  对象=Session["键名"]  as 对象类型 ;

 

3、  清空会话:

Session["键名"] = null; //清空单个会话数据

Session.Abandon(); //清空当前所有会话

 

*         Cookie对象的使用:

1、  创建Cookie

方法一:

 Response.Cookies[Cookie的名称].Value = 变量值;

方法二:

HttpCookie hcCookie = new HttpCookie(Cookie的名称, 变量值);

 hcCookie.Expires = 过期时间;

 Response.Cookies.Add(hcCookie);

 

2、  读取Cookie数据:

string 变量名 = Request.Cookies[Cookie的名称].Value;

 

*         配置会话状态:

1、  为当前应用程序配置会话状态:

<system.web>

<sessionState timeout ="20" cookieless = " false"   

    mode ="InPro">

</sessionState>

       ……

</system.web>  

注:timeout:会话状态存储的期限默认20分钟 cookieless是否使用cookie的标识;mode Session信息存储位置

↑ 上一篇文章:ASP.NET 2.0的Membership, Roles, 和Profile 关键词:ASP.NET,2.0,Membership,Roles.. 发布日期:2015/7/29 12:14:04
↓ 下一篇文章:ASP.NET中的分页剖析(一) 关键词:C#,ASPX,ASP,.NET中,分页 发布日期:2015/7/29 12:19:12
相关文章:
ASP.NET无法弹出JS对话框及弹出JS对话框时进行页面的重定向 关键词:asp.net,C#,无法弹出JS对话框,JS弹出对话框并进行页面跳转 发布日期:2015-07-07 17:40
ASP.NET(C#)实现一次性上传多张图片(多个文件) 关键词:ASP.NET,C#,一次性,上传,多张图片,多个文件 发布日期:2015-07-28 16:07
ASP.NET C#调用存储过程来获取output参数的值 关键词:asp.net,C#,SQL,Server,存储过程,output参数值 发布日期:2015-07-07 17:44
相关目录:.NET软件开发ANDROID
我要评论
正在加载评论信息......