【发布时间】:2013-04-02 15:16:17
【问题描述】:
我正在尝试使用 ajax 将数据从视图传递到控制器操作方法,如下所示:-
我有用户的 Membership 实例,我使用 viewbag 从另一个控制器传递到下面的这个视图,有点像这个 ViewBag.MyUser = MyUser;
现在我想使用 ajax 将“MyUser”传递给另一个控制器,如下所示。
$('#Link').click(function () {
$.ajax({
url: http://localhost/Account/Process,
type: 'POST',
data: '@ViewBag.MyUser',
success: function () {
},
error: function () {
}
});
我发帖的ActionMethod如下
public ActionResult Process(MembershipUser MyUser)
{
//Do somethihng with MyUser
}
如果我通过 do ajax post,我会在 BeginExecuteCore(AsyncCallback callback, object state) 内部收到错误,指出“没有为此对象定义无参数构造函数。”我的操作方法甚至都没有控制权。
如果我从 Action Method 中删除参数 (MembershipUser MyUser),它会发布到 Action 方法,但是
- 在这种情况下,如果没有参数,我如何将“MyUser”从该视图传递给控制器?
- 路线有问题吗?如果是,路线应该是什么?
- 或者我应该使用 get 还是 post ?
- 我应该在哪里将 MyUser 转换回 MembershipUser ?
【问题讨论】:
标签: asp.net-mvc jquery parameter-passing viewbag asp.net-mvc-views