C# '`';发送列表期间的字符和请求正文

C# '`';发送列表期间的字符和请求正文,c#,asp.net,generics,serialization,restsharp,C#,Asp.net,Generics,Serialization,Restsharp,我正在尝试使用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"); restR

我正在尝试使用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);
var strList=newlist();
strList.添加(“一”);
strList.添加(“两个”);
restRequest.AddBody(strList);
似乎不喜欢泛型的序列化方式。
是否有关于如何将列表传递给请求的建议?

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

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

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


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

请给出一个简短但完整的示例来演示该问题。这里的内容太少。从RestSharp 106.5.4更新到106.6.3会导致此错误,此解决方案不起作用。