2017-12-25 26 views
0

나는 aps.net 웹 서비스 (asmx)를 가지고 있으며 웹 서비스 (asmx 페이지)가 포함 된 프로젝트 세션에 액세스해야합니다.다른 프로젝트에서 호출하는 WebMethod에서 세션 값을 변경하려면 어떻게해야합니까?

웹 서비스의 프로젝트 (웹 사이트)에서 세션이 Test이고 동일한 솔루션의 다른 프로젝트에서 나는 Test 세션의 값을 변경하는 webmethod를 호출합니다.

다른 프로젝트에서 호출하는 WebMethod에서 세션 값을 변경하려면 어떻게해야합니까?

나는이 시도 : (하지만 제대로 동작하지 않습니다)

[WebMethod(EnableSession = true)] 
public void ChangeSession() 
{ 
    Context.Session["Test"] = "Some value"; 
} 

그리고 나는이 시도 : 내가 만들

:

HttpContext.Current.Session["Test"] = "Some value"; 

답변

0

내가 방법을 발견 (또한이 작동하지 않습니다) 새로운 aspx 페이지를 방문하여 asmx에서 전화하십시오 HttpWebRequest

ASMX :

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("<my domain>/ChangeSessionValue.aspx"); 
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 

영문에서 :

protected void Page_Load(object sender, EventArgs e) 
{ 
    Session["Test"] = "Some Values"; 
}