我有一个aps.net Web服务(ASMX),我需要访问包含Web服务(ASMX页面)的项目。
在Web服务的项目(网站)中,我有会话Test
,在另一个项目中,我称之为webMethod的另一个项目,该webMethod会更改会话Test
的价值。
我如何从另一个项目调用WebMethod的会话值?
我尝试了以下操作:(但它不起作用)
[WebMethod(EnableSession = true)]
public void ChangeSession()
{
Context.Session["Test"] = "Some value";
}
我尝试了以下操作:(也不起作用)
HttpContext.Current.Session["Test"] = "Some value";
我找到了一种方法:
我创建了新的ASPX页面,并使用HttpWebRequest
在ASMX中:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("<my domain>/ChangeSessionValue.aspx");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
在ASPX中:
protected void Page_Load(object sender, EventArgs e)
{
Session["Test"] = "Some Values";
}