【发布时间】:2012-01-06 10:03:20
【问题描述】:
我的控制器上有以下方法:
[HttpPost]
public ActionResult UnplannedCourses(int studentId)
{
var model = CreateUnplannedCourseModel(studentId);
return View("UnplannedCourses", model);
}
在我看来,我尝试:
<div class="unplannedcourses">
@Html.Action("UnplannedCourses", "Student", new { studentId = Model.StudentId })
</div>
但这会产生错误:在控制器“Digidos.MVCUI.Controllers.StudentController”上找不到公共操作方法“UnplannedCourses”。
如果我将 [HttpPost] 留在外面,那么它可以工作,但我稍后会再次从 javascript 中使用该操作,所以我希望只有 POST 可用。
有什么办法吗?
【问题讨论】:
-
你为什么不把它设置为
GET,然后通过你的JavaScript代码和GET调用它呢? -
我所有的交流都是通过 POST 进行的,所以我想继续这种做法。
-
John Html.Actionlink 不使用任何东西(get/post) 来传递控制权,并且您使用 [httppost] 装饰了您的操作。
-
@Kannas:我从来没有提到过 Html.ActionLink...