将ASHX ProcessRequest转换为MVC控制器

时间:2017-09-07 16:34:06

标签: asp.net-mvc ashx

我有一个ashx文件,定义了以下方法:

public void ProcessRequest(HttpContext context) ...

我想将其中的代码移动到MVC控制器中。它是可以在MVC控制器中轻松运行的所有代码,但我不确定是否需要以特定方式编写它以便能够以相同的方式调用它。我尝试过以下方法:

[HttpPost] //in the TestController
public void Index()
{
    var context = HttpContext;
....

但它并没有在第一线击中我的断点。是否有另一种方法我需要设置它以便复制被调用的因为ProcessRequest在ASHX文件中被调用?

编辑:这是我的路线配置:

    routes.MapRoute(
        name: "Test",
        url: "test/{action}",
        defaults: new { controller = "Test", action = "Index" }
    );

1 个答案:

答案 0 :(得分:0)

事实证明,就我的目的而言,我的行动方法必须是GET,而不是POST。改变这解决了我的问题。