将AngularJS参数传递给ActionResult方法
问题描述:
我有谷歌,并尝试了很多不同的解决方案来解决这个问题,他们都没有工作。这是我得到的。我试着通过一个Action Link
和一个锚标签。尝试从ActionResult
中的网址获取它。这种定位的标签产生正确的URL将AngularJS参数传递给ActionResult方法
HTML
<a class="link btn btn-default" ng-href="@Url.Action("CloseProject", "Home")?id={{item.ID}}">@Resource.CloseProjectButton</a>
C#
public ActionResult CloseProject()
{
Guid id = new Guid(Request["id"]);
_fastaSamarbetenRepo.UpdatePropertyBagItemStatusToClosed(id);
return RedirectToAction("Projekt");
}
我究竟做错了什么?
答
您应该通过new
关键字通过parameter
。
@{
var url = Url.Action("CloseProject", "Home", new { id = "{{item.ID}}"});
url = HttpUtility.UrlDecode(url);
}
并使用data-ng-href
。
<a class="link btn btn-default" data-ng-href="@url">@Resource.CloseProjectButton</a>
+1
Thanx。得到了调试器工作分秒,事实证明,控制器获得GUID。问题在别处所以谢谢先生! – AllramEst
我建议使用HttpPost动作来更新数据的任何代码。 – Shyju
你的问题具体是什么?如果您的网址正确生成缺少什么? – Shyju
该网址看起来正确。但从来没有击中控制器。我还没有能够调试。这真的很糟糕。我遇到了不附加到项目的SharePoint调试器的问题。 – AllramEst