一般处理程序
返回的数据
新建一般处理程序文件,产生Handler1.ashx和Handler1.ashx.cs两个文件。context.Request.HttpMethod
public class Handler1 : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Write("Hello World");//返回字符串 String filename = context.Server.MapPath(context.Request.FilePath); if( context.Request.UrlReferrer.Host==null) { context.Response.ContentType = "image/jpeg"; context.Response.WriteFile("/err.jpg");//返回图片 } else { } } public bool IsReusable { get { return false; } } }
返回json
JavaScriptSerializer jss = new JavaScriptSerializer();string json = jss.Serialize(p); context.Response.ContentType = "application/json";context.Response.Write(json);
判断是post或get方法 if (HttpContext.Current.Request.HttpMethod.ToUpper() == "POST")
取get和post的参数
context.Request.Params["id"]
String getp1=context.Request.QueryString["aa"].ToString();
String post2=context.Request.Form["aa"].ToString();WebForm文件(Web窗体)
新建WebForm文件(Web窗体),产生WebForm1.aspx,WebForm1.aspx.cs,WebForm1.aspx.designer.cs
WebForm1.aspx文件中直接写html,开头有<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="MTT.WebForm1" %>的引用说明。
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="MTT.WebForm1" %>hello
有 Page_Load事件
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace MTT{ public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } }}
this.Session["state"] = 1;
this.Cache["state"] = 1; this.Application["state"]=1; if (Request["action"] == "PostEwm")asp.net webform取得get和post参数
String getp1=Request.QueryString["aa"].ToString();
String post2=Request.Form["aa"].ToString();webform的缺点是 view和controller是放在一起的,WebForm一出现后,随之而来的是大量的组件诞生,<asp:button>组件,当然可以用html的组件。
ASP.NET处理程序
产生文件名IISHandler2.cs一个文件,有ProcessRequest,直接对get、post请求处理,类似一般处理程序。
using System;using System.Web;namespace MTT{ public class IISHandler1 : IHttpHandler { ////// 您将需要在网站的 Web.config 文件中配置此处理程序 /// 并向 IIS 注册它,然后才能使用它。有关详细信息, /// 请参见下面的链接: http://go.microsoft.com/?linkid=8101007 /// #region IHttpHandler Members public bool IsReusable { // 如果无法为其他请求重用托管处理程序,则返回 false。 // 如果按请求保留某些状态信息,则通常这将为 false。 get { return true; } } public void ProcessRequest(HttpContext context) { //在此处写入您的处理程序实现。 context.Request.Params } #endregion }}
MVC架构
新建,ASP.NET Web应用程序>选择MVC
Views:login.cshtml;
Model:class类
controlers:
Asp.net Web开发方式,分为两种:Web 窗体与MVC,MVC是将请求交给控制器处理,而WebForm是将请求交给请求页的后台文件(.cs文件的Page_Load)处理,MVC前后端分的更细。
MVC与Web 窗体的区别参考
http://blog.csdn.net/yisuowushinian/article/details/17646121