2009-06-04 3 views
1

난 그냥 새로운 ASP.NET 호스트에 swiched 그리고 그것은 다르게 행동하는 것 같습니다. 마스터 페이지의 코드에서 인증 된 사용자에 대해 다른 논리를 시도하고 있습니다.ASP.NET 마스터 페이지에서 Context.User이 null 인 이유는 무엇입니까?

if (Context.User.IsAuthenticated) { 
} 

그러나 Context.User 객체는 null입니다. 하지만 그것은 마스터 페이지에서만 null입니다. 일반 페이지에서 사용하면 작동합니다.

if (User.IsAuthenticated) { 
} 

누구에게 어떤 문제가 있는지 알 수 있습니까? 호스트 환경에 대해 많은 통제력이 없지만 마스터 페이지에서이 정보를 얻을 수있는 다른 방법이 있습니까?

추가 정보가 :

그것은 Context.User 또는 Page.User 객체가 모두

  • Dashboard.aspx의 null 것으로 보인다 (어떤 사용자 마스터 페이지 Page.master) 및
  • Page.master

그러나

에 null가 아닌 (사용하지 않는 마스터 페이지)
  • TestUser.aspx
+0

어디 당신이이 검사를하고 있습니다 HttpContext.Current.User.Identity.IsAuthenticated? – Keltex

+0

Page_Load 이벤트에 있습니다. –

답변

6

왜 사용하지 않는 : 마스터 페이지에

Page.User.IsAuthenticated 

?

+0

나는 이것을 시도했지만 같은 결과를 보았다. –

+0

이후이 응용 프로그램을 떠나 MVC 버전의 사이트를 마쳤으므로이 문제는 더 이상 문제가되지 않습니다. Page.User.IsAuthenticated를 사용할 수 있다는 것을 깨닫지 못해서 제게 도움이되었습니다. –

2

이 하나를 시도해보십시오 : 이

관련 문제