如何将请求发布到 Web API 作为 Xml?
我正在使用以下测试:
[TestMethod]
        public void Should_post_successfully_with_valid_userDetailsList_usingRestSharp()
        {
            // arrange
            string url = string.Format("{0}/User/BulkLoad", this._baseUrlForLuis);
            var client = new RestClient(url);
            var request = new RestRequest(Method.POST)
                {
                    RequestFormat = DataFormat.Xml
                };
            request.AddBody("<user></user>");
             request.AddHeader("Accept", "application/xml");
            // act
            IRestResponse response = client.Execute<HttpResponseMessage>(request);
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
        }
我的动作如下所示;它接受一个字符串:
        [HttpPost]
        public HttpResponseMessage BulkLoad([FromBody] string userDetailsListXml)
        {
}
但 userDetailsListXml 始终为 null,因此不会传递该值。
如何解决?
我尝试使用 Ajax Post 并且以下代码通过并且工作正常:
$.post("http://www.domain.com/User/BulkLoad", {"" : "<user></user>"});
但是如何让它与 RestSharp 一起工作呢?