0

単純なxmlWebリクエストを送信するコードがいくつかあります。これは、Windowsサービスから呼び出されます。サービスが例外のスローを開始し(System.Net.WebException:操作がタイムアウトしました)、サービスを再起動すると問題が修正される場合があります。コードは次のとおりです。

    public bool PerformXmlRequest(string xml)
    {
        var httpRequest = (HttpWebRequest)WebRequest.Create(_url);

        httpRequest.Method = "POST";

        httpRequest.ContentType = "text/xml";

        using (var xmlWriter = new StreamWriter(httpRequest.GetRequestStream(), Encoding.UTF8))
        {
            xmlWriter.WriteLine(xml);
        }

        using (var httpResponse = (HttpWebResponse)httpRequest.GetResponse())
        {
            return httpResponse.StatusDescription == "OK";
        }
    }

この問題を引き起こしている可能性のある、明らかに問題があるものはありますか?

4

1 に答える 1

1

私が見つけることができるものは何も呼び出し元のコードに間違っていることはありません。

エラーはクライアント側のコードによって生成されたものですか、それともサービスから発生したものですか?

それがサービスからのものである場合、修正する必要があるのはサービスです。理想的には、サービスは送信内容に関係なくタイムアウトしないはずです。より制御された方法で失敗し、より良いエラーメッセージが表示されます。

于 2010-12-14T10:57:24.667 に答える