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# 带希伯来语字符的Http WebRequest(SQL Server CLR sp)_C#_Sql Server_Web Services_Get_Sqlclr - Fatal编程技术网

C# 带希伯来语字符的Http WebRequest(SQL Server CLR sp)

C# 带希伯来语字符的Http WebRequest(SQL Server CLR sp),c#,sql-server,web-services,get,sqlclr,C#,Sql Server,Web Services,Get,Sqlclr,我准备了一个CLR存储过程,以便为SMS消息web服务发送GET请求。代码如下: [Microsoft.SqlServer.Server.SqlProcedure] public static void HttpGet(SqlString uri, out SqlString textResponse) { Uri webUri = new Uri(uri.Value); HttpWebRequest webReq = (HttpWebRequest)WebRequest.Cr

我准备了一个CLR存储过程,以便为SMS消息web服务发送GET请求。代码如下:

[Microsoft.SqlServer.Server.SqlProcedure]
public static void HttpGet(SqlString uri, out SqlString textResponse)
{
    Uri webUri = new Uri(uri.Value);

    HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(webUri);
    webReq.Method = "GET";

    WebResponse response = webReq.GetResponse();
    Stream dataStream = response.GetResponseStream();

    using (dataStream)
    {
        StreamReader reader = new StreamReader(dataStream);
        using (reader)
        {
            textResponse = reader.ReadToEnd();
        }
    }
}
我正在尝试发送以下请求:

http://serviceaddress/SMSManager/msgSend.jsp?msg=עברית&to=sms:050-1234567&encoding=windows-1255
出于某种原因,我得到的信息是胡言乱语

我试着用希伯来文向其他网络服务发送请求,效果很好。 我试过用URL编码希伯来语部分,但也没用。我尝试将请求的编码更改为“utf8”或忽略它。没用。
我尝试使用完全相同的URL和带有OLE自动化过程的希伯来文字母。成功了。 我欢迎任何关于如何继续或如何解决问题的建议


谢谢。

您必须对URL进行编码。看看

,我尝试使用与希伯来文完全相同的URL和OLE自动化过程。它成功了。您可以为StreamReader指定编码。使用新的StreamReaderdataStream,Encoding.UTF8;或者不管你的编码是什么,这不是只适用于响应吗?这仍然是一个问题吗?这个请求URI就是您传递到CLR存储过程中的URI吗?你给HttpGet进程打的确切电话是什么?我真的记不得了。谢谢你!