.net:一般处理程序开发模式

1 篇文章 0 订阅

一般处理程序(ashx) 与前台交互 类似与MVC开发模式,区别是可能是少个Model吧,哈哈哈,一般处理程序做了控制器的角色,我在webForm的项目里经常这样做,和一个前辈学的后面做webForm项目我就没有用webForm里自带的页面的cs文件处理数据了,就纯html不用服务区控件了,我也不知道这种方式好不好,但真的挺好用的,就是编辑html页面有点麻烦,好了,不多bb,下面直接开始(我直接用我之前项目里的代码给大家展示,节约时间)。
首先建好一般处理程序(我这里是繁体版,简体版叫一般处理程序,繁体叫泛型异常处理程序)
在这里插入图片描述
下面是建好的样子
在这里插入图片描述
建好后,前台页面怎么访问一般处理程序呢?中间肯定有联系的
所有打开一般处理程序,在上图ProcessRequest方法内写入如下代码

 ///context  接收参数的
 public void ProcessRequest(HttpContext context)
 {
    context.Response.ContentType = "text/plain";
    string action = context.Request.Form["action"].ToString(); //前台传入的筛选参数
    System.Reflection.MethodInfo m = this.GetType().GetMethod(action);//前台传输的方式 POST
    string s = ""; //接收返回前台的值
    switch (action)
    {
        case "text1":
             s= text1();
             break;
         case "text2":
             s=text2(context);
             break;
         default:
             break;
     }
    context.Response.Write(s);
    context.Response.Flush();
    context.Response.End();
 }

//无参
public string text1() {
 ///实际操作代码 
 return "测试";
}

//有参
public string text2(HttpContext context) {
 ///实际操作代码 
 string alertString=context.Request.Form["alertString"].ToString();
 return alertString;
}

后台代码就先写这么多,接下里看前台了,
html部分

   <input type="button" value="無參" id="HaveGinseng" />
        <br />
    <input type="text" id="alertStr" />
   <input type="button" value="有參" id="NoGinseng"/>

js部分

  $(function(){
            $("#HaveGinseng").click(function () {
                $.ajax({
                    type: 'POST',
                    url: 'Handler1.ashx',
                    data: { action: 'text1' },
                    success: function (data) {
                        alert(data);

                    }, error: function () {

                    }
                })
            })

            $("#NoGinseng").click(function () {
               var s= $("#alertStr").val();
                $.ajax({
                    type: 'POST',
                    url: 'Handler1.ashx',
                    data: { action: 'text2', alertString: s },
                    success: function (data) {
                        alert(data);
                    }, error: function () {

                    }
                })
            })
        })

效果如下图 点击无参
在这里插入图片描述
点击有参在这里插入图片描述

记录技术人生

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值