12

我正在尝试使用 RestSharp 向我的实体发布请求。

但我收到一个错误:

"System.Xml.XmlException : The '`' character, hexadecimal value 0x60, 
cannot be included in a name."

我将列表放在查询的正文中。

var strList = new List<string>();
      strList.Add("one");
      strList.Add("two");

restRequest.AddBody(strList);

似乎它不喜欢泛型的序列化方式。有什么建议应该如何将列表传递给请求?

4

3 回答 3

8

添加:restRequest.RequestFormat = DataFormat.Json 之前:restRequest.AddBody(strList);

于 2015-12-15T10:54:36.117 回答
4

您可以使用 Server.HtmlEncode 对字符进行编码并稍后解码。

于 2013-08-20T10:21:37.797 回答
1

在 106.6.x 以上版本中,AddBody() 方法不再适用于 Json,即使 RequestFormat 设置为 Json。AddBody() 方法也被标记为 deprericated,建议将其更改为 AddXmlBody() 也不起作用(抛出相同的异常)。

解决方案非常简单:改为调用 AddJsonBody() ,一切正常。

于 2019-01-07T14:29:06.023 回答