.Net之一般处理程序
1、一般处理程序是什么?
答:一般处理程序是以.ashx结尾的文件,默认命名为Handler1.ashx。
用在Web项目中,也就是我们常说的网站项目。
2、新建一个一般处理程序
1.1 新建一个空网站
1.2 在新建的空网站中添加新建一般处理程序,命名为TestHandler.ashx
可以看到代码为:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace TestHandler
{
/// <summary>
/// TestHandler 的摘要说明
/// </summary>
public class TestHandler : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World");
} public bool IsReusable
{
get
{
return false;
}
}
}
}
1.3 运行一般处理程序
F5运行时,会发现浏览器显示了一个列表,因为ashx不是浏览器认识的可以展示的内容,需要在后面指定运行的一般处理程序名称,或者,直接在列表中选择你要查看运行的ashx.
运行显示结果:是1.2中输出的"Hello World"。 此时浏览器的地址是:http://localhost:14242/TestHandler.ashx(本地)
1.4 参数设置 参数获取
参数设置:在浏览器地址后面添加参数,如http://localhost:14242/TestHandler.ashx?name=zhangsan&age=18
参数获取:在后台代码中该如何获取呢,如下
public class TestHandler : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/html";
string name = context.Request["name"];
string age = context.Request["age"];
context.Response.Write("Hello My name is "+name+" and I'm "+age);
} public bool IsReusable
{
get
{
return false;
}
}
}
运行结果是:Hello My name is zhangsan and I'm 18
当然正式程序中肯定不会用这种方式设置参数,这只是初步理解一般处理程序
3、表单提交到一般处理程序
3.1 新建一个HTML文件,编写form表单,代码如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<form action="TestHandler.ashx" method="post">
姓名:<input type="text" name="username"/>
年龄:<input type="text" name="age"/>
<input type="submit" />
</form>
</body>
</html>
3.2 name的属性就是传递给一般处理程序接收的
3.3
4、XXX
.Net之一般处理程序的更多相关文章
- ASP.NET(IIS)出现"没有为请求类型"GET"找到 HTTP 处理程序"
pasting 环 境:windows 2003 IIS6.0 程序支持:ASP.NET .NET版本:2.0.4.0 问 题:之前服务器上各大网站运行良好,今天突然出现:" ...
- 处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表中有一个错误模块“ManagedPipelineHandler”
新服务器安装完开发环境后,还需要注册framework4.0到IIS.不然会报错: HTTP 错误 500.21 - Internal Server Error 处理程序“Extensionles ...
- HTTP 错误 404.3 – Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
今天,在vs2013中新建了一个placard.json文件,当我用jq读取它的时候,去提示404,直接在浏览器访问这个文件,提示: HTTP 错误 404.3 – Not Found 由于扩展配置问 ...
- IIS网站或系统验证码不显示问题——"使用了托管的处理程序,但是未安装或未完整安装 ASP.NET"
在IIS上发布了一个系统,但是登陆页面的验证码图片一直出不来,尝试了各种办法,权限.路径.继承父类路径等都不管用,进入Login.html,对着无验证码图片的图标,右键复制图片的网址,粘贴到地址栏,出 ...
- HTTP 错误 500.21 - Internal Server Error 处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
HTTP 错误 500.21 - Internal Server Error 处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipe ...
- KnockoutJS 3.X API 第七章 其他技术(5) 使用其他事件处理程序
在大多数情况下,数据绑定属性提供了一种干净和简洁的方式来绑定到视图模型. 然而,事件处理是一个常常会导致详细数据绑定属性的领域,因为匿名函数通常是传递参数的推荐技术. 例如: <a href=& ...
- 深入理解DOM事件机制系列第二篇——事件处理程序
× 目录 [1]HTML [2]DOM0级 [3]DOM2级[4]IE[5]总结 前面的话 事件处理程序又叫事件侦听器,实际上就是事件的绑定函数.事件发生时会执行函数中相应代码.事件处理程序有HTML ...
- ASP.NET:在一般处理程序中通过 Session 保存验证码却无法显示图片?
using System.Drawing; using System.Web; using System.Web.SessionState; /// <summary> /// Captc ...
- 用JQuery Ajax 与一般处理程序 请求数据无刷新,以及如何调试错误
通过 ajax() 与 一般处理程序,请求数据库数据,实现界面无刷新. Jquery ajax 请求参数详细说明 http://www.w3school.com.cn/jquery/ajax_ajax ...
- ISS部署网站--HTTP 错误 404.17 - Not Found 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。
1.控制面板>程序和功能>打开或关闭Windows功能 > Internet信息服务 > 万维网服务 > 应用程序开发功能 > ASP.NET(看这个是否选上): ...
随机推荐
- 提示text还能输入多少字节
1.添加jQuery自定义扩展 $(function($){ // tipWrap: 提示消息的容器 // maxNumber: 最大输入字符 $.fn.artTxtCount = function( ...
- JQuery打造下拉框联动效果
做联动效果,若是用纯JavaScript来做,往往须要辅助页面保存须要刷新的结果集,然后渲染到原页面.考虑将须要动态刷新的内容自己主动拼接到前一个下拉框之后,当前一个下拉框onchange后,同级的后 ...
- Oracle基础(二)---操作命令
接上篇博客介绍Oracle基本概要.以下将介绍数据库的操作指令. Sql*plus经常使用命令 连接命令 1. conn[ect] 使用方法 connusername/password@网路服务名[a ...
- SAN实现
Linux 上主要有三个 iSCSI Target(基于internet scsi协议的target) 实现: Linux SCSI Target – STGT / tgt Linux-IO Targ ...
- 单选,复选操作div,显示隐藏
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- 最小生成树Jungle Roads
这道题一定要注意录入方式,我用的解法是prime算法 因为单个字符的录入会涉及到缓冲区遗留的空格问题,我原本是采用c语言的输入方法录入数据的,结果对了,但是提交却一直wrong,后来改成了c++的ci ...
- Redis中各种方法的使用
①set ; i< ; i++) { // 不可以重复添加数据 client.AddItemToSet(KKey, "dong升-" + i); } client.Remov ...
- 这两天写的mybatis配置文件,主要是有输出和输入的存储过程
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-/ ...
- poj 1321 棋盘问题 递归运算
棋盘问题 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 19935 Accepted: 9933 Description ...
- 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息
简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 系统环境:Fedora22(昨天已安装scrapy环境) 爬取的开始URL:ht ...