asp.net-mvc-4 – ASP.Net Web Api在POST上不绑定模型
发布时间:2020-12-15 22:21:11 所属栏目:asp.Net 来源:网络整理
导读:我试图将 JSON数据发布到Web Api方法,但是JSON数据并不绑定到模型. 这是我的模型: [DataContract]public class RegisterDataModel{ [DataMember(IsRequired = true)] public String SiteKey { get; set; } [DataMember(IsRequired = true)] public String U
我试图将
JSON数据发布到Web Api方法,但是JSON数据并不绑定到模型.
这是我的模型: [DataContract] public class RegisterDataModel { [DataMember(IsRequired = true)] public String SiteKey { get; set; } [DataMember(IsRequired = true)] public String UserId { get; set; } [DataMember(IsRequired = true)] public String UserName { get; set; } } 这是我的Web Api操作: public class RegisterController : ApiController { public Guid Post([ModelBinder] RegisterDataModel registerDataModel) { if (!ModelState.IsValid) { throw new ModelStateApiException(ModelState); } var userProfileDataContract = userProfileBusinessLibrary.GetNewOne(); userProfileDataContract.UserId = registerDataModel.UserId; userProfileDataContract.UserName = registerDataModel.UserName; var userKey = userProfileBusinessLibrary.Register(registerDataModel.SiteKey,userProfileDataContract); return userKey; } } 在添加[ModelBinder]之前,registerDataModel为null.添加[ModelBinder]后,registerDataModel是一个RegisterDataModel实例,但所有属性值都为空. 这是我通过Fiddler的请求: http://local.testwebsite.com/api/register Request Headers: User-Agent: Fiddler Host: local.testwebsite.com Content-Length: 89 Content-Type: application/json; charset=utf-8: Request Body: { "SiteKey":"qwerty","UserId": "12345qwerty","UserName":"john q" } 我发现我的帖子数据绑定到RegisterDataModel属性是什么?谢谢你的帮助. 解决方法
您如何创建JSON请求?通过Fiddler请求生成器?请在请求正文中尝试以下内容.
{ "SiteKey":"qwerty","UserName":"john q" } 我猜“请求机构:”也是您的请求机构的一部分.删除并检查. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-web-api – 带有PUT或PATCH谓词的ASP.NET 5 MVC 6
- asp.net – 是否可以访问配置文件而不更新LastActivityDate
- asp.net-mvc – 如何让Visual Studio 2012检测虚拟目录是否
- asp.net-mvc – 缩小ASP.NET MVC中的Action Filter属性
- asp.net – 使用System.Web.Providers的OptimisticConcurre
- asp.net – “与底层事务管理器的通信失败”错误消息
- asp.net-mvc – ASP.net MVC自定义路由处理程序/约束
- asp.net – 检测是否加载了HttpModule
- asp.net – 用于Microsoft.Office.Interop.Excel的Excel dl
- entity-framework – 此版本的Entity Framework核心软件包管