[英]return url.action as json object mvc
我的控制器方法返回 Json 對象,其 url 形成如下所示:
return Json(new { url = Url.Action("ShowContact", "Customer", new { vm = contactVM }) }, JsonRequestBehavior.AllowGet);
在 ajax 調用的成功代碼中,我想將此 url 分配給 window.location.href 以便我可以根據形成的 url 重定向查看。 但是ajax調用的返回值顯示作為url的一部分傳遞的路由值的純文本值。
因此,我沒有得到任何想要傳遞給控制器的重定向操作方法的路由值。
那么,為了傳遞我的路由值(包括集合在內的復雜 c# 對象),我有哪些選項? 有沒有更好的方法來實現我想做的事情?
謝謝,
您可以直接傳遞 url 字符串而不是 'Url.Action()'。 像這樣的東西:
string url = "Customer/ShowContact?vm=" + contactVM;
return Json(url , JsonRequestBehavior.AllowGet);
嘗試將其拼湊在一起:
return Json(
new
{
url = Url.Action("ShowContact", "Customer"),
vm = contactVM
},
JsonRequestBehavior.AllowGet);
然后在客戶端:
var url = result.url + '?vm=' + JSON.stringify(result.vm);
當然,我從來沒有測試過這個。
簡單而簡短
return Json(new { redirectUrl = @Url.Action("View", "Controller") });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.