Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C语言中的Rest服务编码查询字符串_C#_Rest - Fatal编程技术网

C# C语言中的Rest服务编码查询字符串

C# C语言中的Rest服务编码查询字符串,c#,rest,C#,Rest,当我在查询字符串中输入一些Unicode UTF-8字符时,它将在我的程序中更改 [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Single, IncludeExceptionDetailInFaults = true)] [AspNetCompatibilityRequirements(RequirementsMode =

当我在查询字符串中输入一些Unicode UTF-8字符时,它将在我的程序中更改

[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single,
         ConcurrencyMode = ConcurrencyMode.Single, IncludeExceptionDetailInFaults = true)]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class RestServices : IRESTServices
{
    public Stream GetClientNameById(string id, string message)
    {
        string ReturnString = string.Format("id={0} and message ={1}", id, message);
        return GenerateStreamFromString(ReturnString);
    }

    private Stream GenerateStreamFromString(string s)
    {
        MemoryStream stream = new MemoryStream();
        StreamWriter writer = new StreamWriter(stream, Encoding.GetEncoding("utf-8"));
        writer.Write(s);
        writer.Flush();
        stream.Position = 0;
        return stream;
    }

}
如果我在下面输入地址,消息将更改:

http://localhost:8000/DEMOService/subscribe?userID=14953828&message=مرحبا
它将变成Óáã

如何使用utf-8

这是接口:

[ServiceContract(Name = "RESTDemoServices")]
[XmlSerializerFormat]
public interface IRESTServices
{
    [OperationContract]
    [WebGet(UriTemplate = Routing.GetClientRoute, BodyStyle = WebMessageBodyStyle.Wrapped, RequestFormat=WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json)]
    Stream GetClientNameById(string id, string message);
}
以及:

public static class Routing
{
    public const string GetClientRoute = "/subscribe?userID={id}&message={message}";
}