【问题标题】:What is the work around to pass data into MVC controller from Angularjs?从 Angularjs 将数据传递到 MVC 控制器的解决方法是什么?
【发布时间】:2018-02-24 14:35:25
【问题描述】:

我正在获取数据列表并在表格中使用 angularjs 显示它。

<tr dir-paginate="entit in testing>
<td>{{entit.ExerciseName}}</td>
<td>{{entit.Name}}</td>
<td>{{entit.StartingDate}}</td>
<td>{{entit.EndDate}}</td>
</tr>

现在我的问题是我如何在单击链接后获取练习名称值以将其发送到我的控制器?

@Html.EncodedActionLink("View History", "NationalHistory", "Applicant/Testing", new {ExerciseName = (How do I set the value at here) }, new { @class = "btn btn-success btn-sm btn-block"})

顺便说一句,我使用的是从这个链接获得的@Html.EncodedActionLink: https://dotnettrace.net/2013/09/19/encrypt-and-decrypt-url-in-mvc-4/

请帮忙....

【问题讨论】:

  • 您怎么知道要发送哪个ExcerciseName?操作链接是for loop 的一部分吗?
  • 一种更简洁的方法是根本不使用 MVC 控制器。对数据使用 Web API,对角度视图使用 HTML 模板。尝试结合 razor 模板(即使用 mvc 控制器)和 angular 模板通常会导致糟糕的 SOS(关注点分离)。
  • @Sajal 是的,它在循环中。

标签: c# angularjs


【解决方案1】:

Razor 代码 (@Html.EncodedActionLink(...)) 在页面被浏览器呈现并可供 Angular 交互之前在服务器上运行。因此,您不能只是让 Angular 稍后插入数据。

您需要从 Angular 控制器/服务进行 ajax 调用,可能使用 Angular $http 服务(假设您的标签是正确的并且您使用的是 Angular 1.x)。

【讨论】:

  • 是否有任何链接或教程链接可以与我分享以指导我遵循您的建议?
猜你喜欢
  • 2017-05-01
  • 2017-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-10
  • 1970-01-01
  • 2012-01-04
相关资源
最近更新 更多