.ashx是怎么被调用的?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.ashx是怎么被调用的?相关的知识,希望对你有一定的参考价值。
这是一。ashx文件<%@ WebHandler Language="C#" Class="GetMap" %>using System;using System.Web;using System.Web.SessionState;using MapgisWSClient;public class GetMap : IHttpHandler, IRequiresSessionState public void ProcessRequest (HttpContext context) try byte[] bt; double xmin = Convert.ToDouble(context.Request.QueryString["LogicMinX"]); double ymin = Convert.ToDouble(context.Request.QueryString["LogicMinY"]); double xmax = Convert.ToDouble(context.Request.QueryString["LogicMaxX"]); double ymax = Convert.ToDouble(context.Request.QueryString["LogicMaxY"]); int width = Convert.ToInt32(context.Request.QueryString["ImageWidth"]); int height = Convert.ToInt32(context.Request.QueryString["ImageHeight"]); int layerNo = Convert.ToInt32(context.Request.QueryString["layerNo"]); bool isEagle = Convert.ToBoolean(context.Request.QueryString["IsEagle"]); MapDisplay.CheckViewport(); CSingleMapView viewport = (CSingleMapView)HttpContext.Current.Session["viewport"]; Rect rc = new Rect(xmin,ymin,xmax,ymax); bt = viewport.GetMapImage(rc,width,height,ImgFormat.gif); context.Response.BinaryWrite(bt); catch ErrorHandler.ResponseErrorMessageImage(); public bool IsReusable get return false; 这是网站的一个GetMap.ashx文件,网站可以运行。全部文件里就在一个。xml文件里看到了这个文件一个配置<vectImageUrl>GetMap.ashx</vectImageUrl>没看到别处调用这个文件啊,但是一步步的执行看到这个文件确实不知咋的被调用了,实在搞不清是咋被调用的?又没人告诉我下。ashx文件怎么调用,(网上查了好多,但没看到这种用法)?
参考技术A ashx文件是一般处理文件,你可以理解为是在服务器端运行的文件。我一般都是用异步处理的时候调用ashx文件,很方便。你可以在前台页面或这个页面引用的JS文件中查找这个ashx文件的名称,然后顺藤摸瓜就可以啦ashx页面怎么调用Handler的Session
aspx里面直接可以用Session["Name"]进行赋值和取值,ashx中就得继承接口IRequiresSessionState。然后使用!
实现:
public class UserInfo : IHttpHandler, IRequiresSessionState { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; var userinfo = context.Session["userinfo"]; } public bool IsReusable { get { return false; } } }
下面的代码示例检查当前的 HTTP Handler 属性来确定是否需要读取和写入访问为会话状态的值。
bool requiresSession = false;if (Context.Handler is IRequiresSessionState) requiresSession = true;
文章引用:http://code365.club/Article?id=19
以上是关于.ashx是怎么被调用的?的主要内容,如果未能解决你的问题,请参考以下文章
哪一个更适合 jQuery.ajax 调用? .Net Web 服务还是 .ashx?