Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将用户从控制器重定向到另一个视图MVC_C#_Asp.net Mvc_Redirect_Controller_Actionresult - Fatal编程技术网

C# 将用户从控制器重定向到另一个视图MVC

C# 将用户从控制器重定向到另一个视图MVC,c#,asp.net-mvc,redirect,controller,actionresult,C#,Asp.net Mvc,Redirect,Controller,Actionresult,我试图将用户从控制器上的一个方法重定向到另一个视图,但无论我做什么都无法让它工作。我做错了什么?这是我的密码: public ActionResult SubmitReport(string JsonStringSend) { dynamic JSend = JObject.Parse(JsonStringSend); var schema = JsonSchema4.FromType<ReportIt

我试图将用户从控制器上的一个方法重定向到另一个视图,但无论我做什么都无法让它工作。我做错了什么?这是我的密码:

            public ActionResult SubmitReport(string JsonStringSend)
        {
            dynamic JSend = JObject.Parse(JsonStringSend);
            var schema = JsonSchema4.FromType<ReportItem>();
            var schemaData = schema.ToJson();
            var errors = schema.Validate(JSend.JsonString);
            schema = JsonSchema4.FromJson(schemaData);


            //Check for errors and show them if they exist
            if (errors.Count > 0)
            {
                //JSchema schema = JSchema.Parse(schema);
                foreach (var error in errors)
                    Console.WriteLine(error.Path + ": " + error.Kind);

                //JObject JsonString = JObject.Parse(JsonObj.JsonString.ToString());
                //JObject JsonStringSent = JObject.Parse(JsonStringSend);

            }
            else
            {
                return Redirect("/Admin/Reporting/ReportManagement");
            }
            return View();
        }

似乎没有任何东西重定向,这会带来什么?

您不会重定向到视图,而是重定向到操作或路由。如果我正确地分析了您尝试的路径,您将看到:

return Redirect("/Admin/Reporting/ReportManagement")
应该是

return RedirectToAction("Reporting", "ReportManagement", new { area="Admin" }) 

这假设对管理区域中的ReportManagementController类执行报告操作。

尝试此操作,它应该可以工作:

return RedirectToAction("yourAnotherActionName","yourAnotherControllerName"); //It's very simply;)

我已经测试过了

如果在调试模式下单步执行代码,会发生什么?当我转到
返回重定向(“/Admin/Reporting/ReportManagement”)时,什么都不会发生它只是不断地跳转您当前的URL是什么?返回重定向操作(“Whatever”)应该以302响应您的浏览器,并使浏览器请求“Whatever”URL。真奇怪。您可能会启动Fiddler,并查看返回的响应(如果有)。感谢您显示“区域”的路由值参数。大帮助!
return RedirectToAction("yourAnotherActionName","yourAnotherControllerName"); //It's very simply;)