asp.net-web-api – Restsharp- Method.POST不能正常工作
发布时间:2020-12-16 09:12:10 所属栏目:asp.Net 来源:网络整理
导读:我根据RestSharp.org文档尝试了所有可能的场景,但没有运气! 我这里有ASP.Net Web API是POST资源 [Route("/api/saveperson/{name}/{fathername}")] public void Post([FromBody]CustomObject customObject,string name,string fatherName){ //customObject i
我根据RestSharp.org文档尝试了所有可能的场景,但没有运气!
我这里有ASP.Net Web API是POST资源 [Route("/api/saveperson/{name}/{fathername}")] public void Post([FromBody]CustomObject customObject,string name,string fatherName) { //customObject is null } RestSharp请求: public void SomeAPIRequest() { var baseUrl = "someurl from config"; var client = new RestClient(baseUrl); var request = new RestRequest("/api/saverperson/{name}/{fathername}",Method.POST); request.RequestFormat = DataFormat.Json; request.AddBody(myObject); //This object is perfectly serialized in json request.AddParameter("name","Gaurav",ParameterType.UrlSegment); request.AddParameter("fathername","Lt. Sh. Ramkrishan",ParameterType.UrlSegment); var response= client.Execute(request); } 使用上面的代码在Body中发布的参数始终为null. 当我进行以下调用时,Body中发布的参数具有值,但其他值为空 public void SomeAPIRequest() { var baseUrl = "someurl from config"; var client = new RestClient(baseUrl); var request = new RestRequest("/api/saverperson/{name}/{fathername}",Method.POST); request.RequestFormat = DataFormat.Json; request.AddBody(myObject); //This object is perfectly serialized in json request.AddUrlSegment("name","Gaurav"); request.AddUrlSegment("fathername","Lt. Sh. Ramkrishan"); var response= client.Execute(request); } 任何帮助都将受到欢迎! 解决方法
我找到了解决方案.回答我自己的问题,那些面临类似问题的人可以找到解决方案.
只需要执行以下请求: request.AddParameter("Application/Json",myObject,ParameterType.RequestBody); 以下是完整的代码段: public void SomeAPIRequest() { var baseUrl = "someurl from config"; var client = new RestClient(baseUrl); var request = new RestRequest("/api/saverperson/{name}/{fathername}",Method.POST); request.RequestFormat = DataFormat.Json; request.AddParameter("Application/Json",ParameterType.RequestBody); request.AddUrlSegment("name","Gaurav"); request.AddUrlSegment("fathername","Lt. Sh. Ramkrishan"); var response= client.Execute(request); } 上面的代码解决了我的问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 身份验证 – 在达到会话和身份验证票证超时值之前,用户被迫
- asp.net-mvc – 导出Excel文件以查看(MVC)
- asp.net – 拥有专用应用程序池,将Web应用程序保留在一个默
- asp.net-mvc – 从Application_Start中获取网站的URL?
- asp.net-mvc – Signalr从集线器外部调用特定客户端
- 防止在Asp.Net Core ViewComponents中加载多个JavaScript脚
- asp.net-mvc – 使用List的奇怪剃刀行为
- asp.net-mvc – visual studio 2013“添加控制器”丢失
- asp.net-mvc – 具有点的窗体元素的MVC Controller参数?
- ASP.NET导航到后面的代码锚点
推荐文章
站长推荐
- asp.net-mvc – 为什么我的会话变量在构建Contro
- ASP.NET 4中仍然需要App_Browsers文件夹吗?
- ASP.NET 5针对dnx451 / dnx46性能
- asp.net-core – ASP.NET Core中的System.Data.E
- asp.net-mvc – 带有实体框架的ASP.NET MVC
- asp.net-mvc – 从OWIN身份验证中间件中考虑控制
- ASP.Net和HTML5
- asp.net – 如何将会话超时设置超过20分钟.
- 在64位的环境中使用VS建立Web项目进行Oracle连接
- asp.net-mvc – 缩小ASP.NET MVC中的Action Filt
热点阅读