我有一个交通繁忙的aspx页面,呼吁每个user`s请求的Web服务如下:
I have a heavy traffic aspx page calling a web service upon every user`s request as follows.
string uri = "Path.asmx";
string soap = "soap xml string";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Headers.Add("SOAPAction", "\"http://xxxxxx"");
request.ContentType = "text/xml;charset=\"utf-8\"";
request.Accept = "text/xml";
request.Method = "POST";
using (Stream stm = request.GetRequestStream())
{
using (StreamWriter stmw = new StreamWriter(stm))
{
stmw.Write(soap);
}
}
WebResponse response = request.GetResponse();
response.close();
一切工作正常,但有时我收到以下错误。
Everything is working fine but sometimes I am getting the following error.
远程服务器返回错误:(500)内部服务器错误。 在System.Net.HttpWebRequest.GetResponse()
The remote server returned an error: (500) Internal Server Error. at System.Net.HttpWebRequest.GetResponse()
有谁对这个错误的任何想法或任何人可以告诉我,如果我做错了。
Does anybody have any idea about this error or can anybody tell me if I am doing wrong.
感谢您
我终于摆脱内部服务器错误消息,具有以下code。不知道是否有另一种方式来实现这一目标。
Finally I get rid of internal server error message with the following code. Not sure if there is another way to achieve it.
string uri = "Path.asmx";
string soap = "soap xml string";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Headers.Add("SOAPAction", "\"http://xxxxxx"");
request.ContentType = "text/xml;charset=\"utf-8\"";
request.Accept = "text/xml";
request.Method = "POST";
using (Stream stm = request.GetRequestStream())
{
using (StreamWriter stmw = new StreamWriter(stm))
{
stmw.Write(soap);
}
}
using (WebResponse webResponse = request.GetResponse())
{
}