Asp.Net MVC 3 JSON模型绑定无法正常工作
发布时间:2020-05-24 13:20:27 所属栏目:asp.Net 来源:互联网
导读:我正在使用MVC3,我知道MVC3支持将 JSON文字绑定到Action参数.但我不能成功地做到; 我有一个班级名称Tag public class Tag{ public int tagId { get; set; } public string tagName { get; set; }} 控制器上的Action,名为Tag [HttpPost] public Ac
|
我正在使用MVC3,我知道MVC3支持将 JSON文字绑定到Action参数.但我不能成功地做到; 我有一个班级名称Tag public class Tag
{
public int tagId { get; set; }
public string tagName { get; set; }
}
控制器上的Action,名为Tag [HttpPost]
public ActionResult Tag(Tag tag)
{
// Here will be codes...
return Json(new { success = 0 });
}
将js对象作为JSON发送到我的操作的Javascript代码 var tag ={tagId:5,tagName:"hello"};
$.ajax({
url: "/image/tag",type: "POST",data: $.toJSON(tag),success: function (r) {
if (r.success == 1) {
window.location = r.redirect;
}
}
发布我在Firebug Net选项卡中看到的数据 {"tagId":5,"tagName":"hello"}
Tag Action中的参数名称标记不为null,但tagId的值为O,tagName的值为null. 解决方法您需要将请求的内容类型设置为application / json:$.ajax({
url: '/image/tag',type: 'POST',contentType: 'application/json; charset=utf-8',success: function (r) {
if (r.success == 1) {
window.location.href = r.redirect;
}
}
});
啊,你不需要让你的Tag模型属性以小写字母开头: public class Tag
{
public int TagId { get; set; }
public string TagName { get; set; }
}
备注1:ASP.NET MVC 3在幕后使用的JavaScriptSerializer类能够正确处理它. 备注2:在你的Tag操作中,你似乎正在返回以下JSON:{“success”:0}而在你成功的AJAX回调中,你似乎正在使用一些不存在的r.redirect属性. 备注3:避免以与视图模型相同的方式命名控制器操作.通常,动作名称应表示动词(如List,Save,Delete,…),而视图模型表示资源(TagModel,…). (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 当用户按下文本框中的返回时,我可以取消回发吗?
- ASP.NET学习CORE中使用Cookie身份认证方法
- asp.net – 没有owin.Environment项目在上下文中找到
- asp.net – IIS 7.5中的URL重写会导致内部服务器错误
- asp.net-mvc – ASP.net Web API和System.Net.Http
- ASP.NET MVC通过ActionLink传递模型
- asp.net – 在telerik网格的列中使用控件
- asp-classic – 与SQL Server Compact Edition 4.0的Ado连接
- asp.net-mvc-routing – ASP.NET Web Api路由(IIS vs Self
- asp.net – 如何在Web应用程序中对PDF文档进行数字签名?
推荐文章
站长推荐
- asp.net-mvc – ASP.NET MVC 3 – 将复杂的JSON模
- asp.net – 从Web API的承载令牌返回用户角色
- asp.net-mvc – Mvc3 Antiforgery令牌多标签
- asp.net-mvc-3 – 如何在MVC3 / 4中的Html.Begin
- asp.net 删除项目文件/文件夹IIS重启,Session丢
- asp.net – .NET身份电子邮件/用户名更改
- asp.net – 用于Basic或Windows身份验证的无限重
- 将自定义ValueProviderFactories添加到ASP.NET M
- asp.net-mvc – 在mvc下拉列表中自动恢复
- asp.net-mvc-2 – 强大类型的ActionLink在Asp.Ne
热点阅读
