首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

“ashx”文件解决思路

2012-04-04 
“ashx”文件“ashx”文件的使用。问题一:“ashx”文件是没有界面的“aspx页面”可以这样理解吗?1、“ashx”文件定义时

“ashx”文件
“ashx”文件的使用。

问题一:“ashx”文件是没有界面的“aspx页面”可以这样理解吗?

1、“ashx”文件定义时。
public class OpenQueryWindow : IHttpHandler
{
  public void ProcessRequest (HttpContext context) 
  {
  //取得相关数据
  List<IDictionary<string, string>> infos;
  switch (context.Request["monitortype"])
  }
  .........................................
  //变换成JSON输出
  var i = 0;
  var jsonstr = new StringBuilder("[");
  foreach (var info in infos)
}

2、使用是用在“AJAX”,如下
 new Ajax.Request(
  '<%=ResolveUrl("~/Web/ReportManger/OpenQueryWindow.ashx")%>',

问题二:“ashx”文件的作用究竟有多大,是什么功能,为什么可以把数据提供给“AJAX”?就是因为单单的转化为了“JSON”???


[解决办法]
问题1:差不多是这样的。ashx学名是是一般处理程序,它的作用就是简单的处理web请求,可以跳过页面复杂的生命周期事件,提供性能,专注于处理业务的逻辑。比如输入参数,返回处理结果。不限于变成json输出,什么形式的都可以。
问题2:你用aspx也可以的,就是性能比不上ashx。同上,不限于json,你返回什么格式的都可以
[解决办法]
1楼的爷们回答的很具体了
就是请求流数据返回用的

数据多种多样,参见content-type

[解决办法]
恩,不是ajax也可以用阿
[解决办法]
是啊。就是处理个数据,把前端的输入数据进行处理,然后再返回给前端
[解决办法]
它就是一个可以接受请求并处理响应的东西。

不过这里面 好像 不可以 用session
[解决办法]
可以用session啊
[解决办法]
1.using System.Web.SessionState;
2.实现IRequiresSessionState接口
3.HttpContext.Current.Session["Session变量名称"]

[解决办法]
JSON就是就是一种字符串格式,按照这种格式输出就可以了啊。

context.Response.ContentType = "application/json";
context.Response.Write("{\"name\":\"xxx\"}");

ashx少了很多事件处理过程和代码解析过程,速度比aspx要快

热点排行