C# 如何修复API调用中的编码问题

C# 如何修复API调用中的编码问题,c#,web-services,encoding,utf-8,url-encoding,C#,Web Services,Encoding,Utf 8,Url Encoding,我通过HTTP调用第三方API,并在参数中传递字符串。此字符串是UTF-8 URL编码的。我的API客户机是用asp.net C编写的,而API主机可能是用Java编写的。当字符串参数中有括号/方括号之类的字符时,UTF-8编码器不会对它们进行编码,而API主机在%28和%29中对它们进行编码,因此我得到了错误的响应。有什么建议可以解决这个编码问题吗 API文档指定使用UTF-8编码,并建议参考本文档有一些鲜为人知的Uri方法: Uri.EscapeString和Uri.EscapeDataSt

我通过HTTP调用第三方API,并在参数中传递字符串。此字符串是UTF-8 URL编码的。我的API客户机是用asp.net C编写的,而API主机可能是用Java编写的。当字符串参数中有括号/方括号之类的字符时,UTF-8编码器不会对它们进行编码,而API主机在%28和%29中对它们进行编码,因此我得到了错误的响应。有什么建议可以解决这个编码问题吗


API文档指定使用UTF-8编码,并建议参考本文档有一些鲜为人知的Uri方法:


Uri.EscapeString和Uri.EscapeDataString可能符合要求。不幸的是,没有MSDN文档说明它们将编码哪些字符,您只需进行实验。

谢谢,但这两种方法都没有对括号进行编码:Console.WriteLineSystem.Uri.EscapeDataString;