我有简单的OOTB处理程序
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace XXX.XXX.WebApi.Controllers
{
/// <summary>
/// Summary description for Handler1
/// </summary>
public class Handler1 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World");
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
我的文件结构是
如何通过url调用这个hello world示例?我经历了很多教程,总是出现问题......比如App_Code文件夹等。
我尝试了什么(或与之一起)
https://msdn.microsoft.com/en-us/library/ms228090.aspx
https://www.codeproject.com/articles/538589/theplustruthplusaboutplushttphandlersplusandpluswe
以及许多其他事情在我的案例中没有成功。有什么想法吗?
答案 0 :(得分:1)
你必须映射处理程序,但是,它不是mvc意义上的控制器,所以我会把它放到应用程序的特殊文件类型处理程序的位置。
要进行连接,您需要通过配置让ASP.NET了解处理程序。
<httpHandlers>
<add verb="*" path="*.myext" type="Handler1"/>
</httpHandlers>
提醒 - 通过这样做,您的应用程序将使用MVC处理管道和传统的ASP.NET管道。
您不能直接致电处理程序。您已指定您有兴趣检查具有特定扩展名和/或路径的请求,这通常会被忽略。要测试处理程序,只需向端点发送一个http请求,该端点将解析为您指定要处理的处理程序。