Asp.net .aspx与ashx的主要区别
.aspx和.ashx页面之间有什么区别?Asp.net .aspx与ashx的主要区别,asp.net,service,ashx,Asp.net,Service,Ashx,.aspx和.ashx页面之间有什么区别? 当我需要处理从代码调用并返回响应的请求时,我现在使用ashx,但我希望得到更技术性的回答。。aspx是一个呈现页面。如果需要查看,请使用.aspx页面。 如果您只需要后端功能,但将保持在同一视图上,请使用.ashx页面。.aspx使用完整的生命周期(Init,Load,PreRender),并可以响应按钮单击等操作。 .ashx只有一个ProcessRequest方法。Page是一个特殊的案例处理程序 通用Web处理程序(*.ashx,基于扩展的处理器
当我需要处理从代码调用并返回响应的请求时,我现在使用ashx,但我希望得到更技术性的回答。。aspx是一个呈现页面。如果需要查看,请使用.aspx页面。
如果您只需要后端功能,但将保持在同一视图上,请使用.ashx页面。
.aspx
使用完整的生命周期(Init
,Load
,PreRender
),并可以响应按钮单击等操作。.ashx
只有一个ProcessRequest
方法。Page
是一个特殊的案例处理程序
通用Web处理程序(*.ashx
,基于扩展的处理器)是所有没有UI且包含@WebHandler
指令的Web处理程序的默认HTTP处理程序
ASP.NET页面处理程序(*.aspx
)是所有ASP.NET页面的默认HTTP处理程序
在内置HTTP处理程序中,还有Web服务处理程序(*.asmx
)和跟踪处理程序(Trace.axd
)
MSDN:
ASP.NET HTTP处理程序正在处理该进程
(通常称为
“端点”),该端点响应
向ASP.NET网站发出的请求
应用最常见的处理程序
是一个ASP.NET页面处理程序
处理.aspx文件。当用户
请求一个.aspx文件,请求为
由页面通过页面进行处理
处理程序
下图说明了这一点:
关于你的第二个问题:
ashx处理的连接是否比aspx多
不要这样认为(但可以肯定的是,至少不少于)。对于以前使用过nodeJs编程的人,尤其是使用expressJS的人。我认为
.ashx
是一个调用next
函数的中间件。虽然.aspx
将是实际响应请求的控制器,无论是res.redirect
、res.send
还是其他什么。我知道,我想要更多的技术答案,可能是数字,ashx比aspx处理更多的连接吗?谢谢,但你没有提到ashx处理程序,那么它的请求管道呢?@Arrabi,HttpHandler
只是在Page
部分之前执行的请求的一部分。在这个上下文中,“可重用”是什么意思?web服务器没有义务为每个新请求创建一个新的对象实例。如果处理程序上的IsReusable=true,则服务器可能会重用现有处理程序对象来处理下一个请求。因此,服务器会创建处理程序的实例并将其保留在内存中以重用它。它永远不会把它还给GC。