1
我需要將保留類型對象從一個主域傳遞到子域,其中是安裝了ssl的頁面。所以它需要有發送所有的價值觀和消費有/如何將複雜類型對象從一個域傳遞到子域
我累了創建具有以下方法
[WebMethod]
public List<Reservation> getReservation()
{
if (HttpContext.Current.Session["reservation"] != null)
{
return (List<Reservation>)HttpContext.Current.Session["reservation"];
}
else
{
List<Reservation> objres = new List<Reservation>();
return objres;
}
}
,所以我可以消耗下面的代碼在子域名頁面
是Web服務的Web服務寫在ssl啓用頁上
string FullUrl = "http://localhost/goldlinetravel/webservice.asmx/getReservation";
HttpWebRequest request = WebRequest.Create(FullUrl.ToString()) as HttpWebRequest;
request.ContentType = "text/xml; charset=UTF-8";
request.Accept = "application/xml";
request.Method = "POST";
request.ContentLength = 0;
DataSet dsReservation = new DataSet();
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
response.GetResponseStream();
dsReservation.ReadXml(response.GetResponseStream());
}
其投擲錯誤500服務器錯誤。
存在Web服務的另一種方法
[WebMethod]
public string HelloWorld() {
return "Hello World";
}
當我消耗與下面的代碼此Web服務沒有錯誤
string FullUrl = "http://localhost/goldlinetravel/webservice.asmx/HelloWorld";
HttpWebRequest request = WebRequest.Create(FullUrl.ToString()) as HttpWebRequest;
request.ContentType = "application/x-www-form-urlencoded";
request.Accept = "application/xml";
request.Method = "POST";
request.ContentLength = 0;
DataSet dsReservation = new DataSet();
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
response.GetResponseStream();
dsReservation.ReadXml(response.GetResponseStream());
}
我沒有得到什麼是錯的,我getReservation方法
你是對的沒有錯誤,但仍然會議空。那麼如何在Web服務中使用酒店頁面預留對象。因此,在另一個域上的預訂頁面可以使用該Web服務並獲取對象 – rahularyansharma 2012-07-14 12:34:20
問題仍未解答,如果我正在使用wromg方法,請給我指示以完成此任務 – rahularyansharma 2012-07-17 18:56:48
ASP.NET會話由cookie進行跟蹤。誰在爲會話寫入價值?它是ASP.NET應用程序還是其他Web方法?您需要將會話cookie與請求一起發送。但我不會詳細討論這個問題,因爲在Web服務中使用會話是錯誤的。您應該傳遞服務所需的信息,或者讓服務從後面的某個後端獲取信息,而不是會話。 – 2012-07-18 05:25:28