2015-01-19 3 views
0

asp.net 응용 프로그램의 루트 디렉토리에 폴더 이름 컨트롤러가 있습니다. 폴더에 클래스 이름이 있습니다. GraphController.csasp.net 웹 응용 프로그램에서 세션이 null입니다.

클래스에서 다음 코드를 사용하여 세션에 액세스 중입니다.

HttpContext.Current.Session["name"] 현재 속성은 null입니다.

또한 웹 설정에서 여전히 세션 상태를 설정하지 않습니다.

WebConfig :

<sessionState mode="InProc" timeout="20"></sessionState> 

ASPX :

여기가 특정 간격 이후 메소드를 호출 내 코드입니다

$.ajax({ 
          url: "RestService.svc/GetSGCData", //"Default.aspx/GetSGCData", 
          type: "POST", 
          data: "{}", 
          contentType: "application/json; charset=utf-8", // we are sending in JSON format so we need to specify this 
          dataType: "json", // the data type we want back. 
          success: function (value) { 
           averageWaitTime = parseInt(value); 
          }, 
          error: function() { 
          } 
         }); 
+0

가능한 복제본은 http://stackoverflow.com/a/27980302/993547입니다. –

+0

확인했지만 문제가 해결되지 않았습니다. –

+0

세션 변수는 어떻게 만들어지고 어디에 있습니까? – Thangadurai

답변

0

ASP에서 WCF의 휴식 서비스에서 세션에 액세스하기 위해 .그물. asp.net 호환 모드에서 서비스를 실행해야합니다.

웹 서비스 클래스에 다음 특성을 추가하십시오.

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 
public class DashboardGraphService : IDashboardGraphService 
{ 
// class 
} 

또한 WebConfig 파일에 <system.serviceModel> 내부에 다음 태그를 추가합니다.

<serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 
관련 문제