我有两个控制器项目和标签,这两个控制器都有创建视图和获取发布方法。我怎样才能得到实际控制器在后方法
从项目创建视图中,我可以选择添加一个标签,该标签用标签创建视图打开一个对话框。
当我添加标签到标签控制器创建发布方法,我希望能够获得发送它的控制器操作(在这种情况下,项目)。我见过UrlReferer类,有没有比这更好的方法来获得控制器?
我需要的,这是我希望能够像做
if (Request.IsAjaxRequest())
{
if (REFERER CONTROLLER != Tag Controller)
{
return Json(new { Item = item, Success = true });
}
else
{
return RedirectToAction("Index");
}
}
所以基本上如果对话框是在另一个控制器则返回新值的JSON否则返回索引操作的原因
编辑最后再次使用这个想法。去了
if (Url.IsLocalUrl(Request.UrlReferrer.AbsoluteUri) && !String.Equals(Request.UrlReferrer.LocalPath.TrimEnd('/'), Url.Action("Index"), StringComparison.OrdinalIgnoreCase))
{
return Json(new { Item = item, Success = true, Field = String.Format("#Selected{0}s", ControllerName) });
}
return Json(new { Success = true, Field = "#mainContent", Url = Url.Action("Index") });
你为什么想这样做? – 2012-04-17 16:11:12
@ChristoferEliasson基本上原因是我想单个json更新下拉列表,如果它不是列表视图。否则我想索引视图刷新部分。 – Manatherin 2012-04-21 21:38:51