从单个控制器调用ASP.NET MVC中的多个控制器操作

时间:2019-04-26 12:15:07

标签: c# .net asp.net-mvc

目前我有5个控制器(cn1至cn5),每个控制器具有相同的动作(createFile),它们将创建特定模块所需的一些文件。由于某些要求,我只需要单独保存它,所以目前我们正在调用每个根据我们的需要执行动作。现在我正在尝试创建一个动作(我将在浏览器中调用),它将一个接一个地调用所有这些动作。仍然我想随时随地分别调用该动作,所以我无法更改单独的控制器操作。将来还会有新的模块出现,因此只需进行最小的修改,我就可以容纳对新操作进行的新控制器操作调用。

下面是我的一个控制器动作

    [Route("createFile")]
    public HttpResponseMessage GetData()
    {
        try
        {

            var response = Request.CreateResponse(HttpStatusCode.Created);

              //file creation code
             //if success
                response.Content = new StringContent("Filter JSON file Error", Encoding.UTF8);
            else
                response.Content = new StringContent("Filter JSON file is created", Encoding.UTF8);
            response.Content.Headers.ContentType = new MediaTypeHeaderValue("text/plain");
            return response;
        }
        catch (Exception ex)
        {

            return Request.CreateResponse(HttpStatusCode.InternalServerError);
        }
    }

当前正在浏览器URL中访问此操作,因此对于5个模块,我需要调用5次,但我应该只保留这样的代码。我们能否在单个action中完成所有的控制器调用。浏览器中的操作,它将自动调用所有这些操作。

0 个答案:

没有答案