asp.net-mvc – ASP.NET Web Api – 将对象发布到自定义动作控制器
发布时间:2020-09-01 19:04:21 所属栏目:asp.Net 来源:互联网
导读:我有下一个ApiController public class ValuesController : ApiController{ // GET /api/values public IEnumerablestring Get() { return new string[] { value1, value2 }; } publ
我有下一个ApiController public class ValuesController : ApiController { // GET /api/values public IEnumerable<string> Get() { return new string[] { "value1","value2" }; } public User CreateUser(User user) { user.Id = 1000; return user; } } 与下一个路线 routes.MapHttpRoute( name: "DefaultApi",routeTemplate: "api/{controller}/{action}/{id}",defaults: new { id = RouteParameter.Optional }); 我想要使用这项服务.我可以使用第一种方法: var client = new WebClient(); var result = client.DownloadString(@"http://localhost:61872/api/values/get"); 但我不能消耗第二种方法.当我做下一个: var user = new User() { Name = "user1",Password = "pass1" }; var json = Newtonsoft.Json.JsonConvert.SerializeObject(user); result = client.UploadString(@"http://localhost:61872/api/values/createuser",json); 我没有附加信息就抓住了下一个例外
我有两个问题: >将自定义对象设置为服务方法参数的正确方法是什么? 解决方法如果您打算发送JSON请求,请确保已正确设置Content-Type请求标头,否则服务器不知道如何编码请求以及Api控制器操作所采用的用户参数为null:using (var client = new WebClient()) { client.Headers[HttpRequestHeader.ContentType] = "application/json"; var user = new User() { Name = "user1",Password = "pass1" }; var json = Newtonsoft.Json.JsonConvert.SerializeObject(user); var result = client.UploadString(@"http://localhost:61872/api/values/createuser",json); } (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.NET MVC模型/ ViewModel验证
- asp.net-mvc – SSL安全SaaS应用程序的URL设计
- asp.net中mvc使用ajax提交参数的匹配问题解决探讨
- asp.net – 使用SignalR编译项目时,我必须做一个iisreset
- asp.net – 会话固定 – 表单身份验证
- 在IIS / ASP.Net中的.NET 1.1应用程序中创建.NET 3.0子应用
- asp.net-mvc-4 – ASP.NET MVC 4通过ActionLink传递对象变量
- ASP.NET虚拟路径映射到另一个不允许的应用程序
- asp.net Xml绑定到数据控件的具体实现
- asp.net – VirtualPathUtility.ToAbsolute()VS. Url.Conte