2

검색어 문자열을 통해 전달 된 userId를 기반으로 한 생체 또는 그림과 같은 콘텐츠와 같이 다른 것들을 표시하는 웹 페이지에 여러 모듈을 개발하는 경우. 페이지로드에서DotNetNuke 모듈 개발에 대한 간단한 질문

는 웹 페이지 행위의 모든 모듈은 독립적으로 개별적으로 쿼리 문자열을보고 사용자 ID를 기반으로 컨텐츠를 반환해야합니다. 그들은 내용을 수정하도록 허용하기 전에 올바른 사용자가 로그인되어있는 경우

과 같은 방법으로

이 모듈은 개별적으로 확인해야합니다.

나는 웹 사이트에 대한 전에 하나 개 또는 두 개의 모듈을 만든 그러나 이것은 처음 내가 DotNetNuke의 웹 사이트를 개발하고이 유일한 방법 인 경우 난 그냥 확실하지 오전입니다.

답변

2

각 모듈은 다른 모듈과 독립적으로 작동해야합니다.

또한, 나는 그 스푸핑 할 수 있기 때문에 당신이 당신의 사용자 ID를 얻기 위해 쿼리 문자열을보고해야한다고 생각하지 않습니다. 대신 모듈의 기본 클래스를 살펴보고 사용자 정보가 포함 된 속성이 있는지 확인하십시오.

6

사용자 컨트롤은 이미 DotNetNuke.Entities.Modules.PortalModuleBase에서 상속해야합니다. 그렇다면 this.UserInfo.UserID 속성을 사용하여 사용자의 ID를 검색 할 수 있습니다. 이것은 쿼리 문자열을 보는 것보다 훨씬 안전합니다. 사용자가 로그인하지 않았을 수 있으며 위의 경우 null 참조가 발생할 수 있으므로 먼저 null을 테스트해야합니다.

또한, 다소 관련 주에, 당신은 특정 사용자가 특정 역할에 있는지 테스트하는 this.UserInfo.IsInRole("RoleName")를 사용할 수 있습니다.

+0

도움을 주셔서 감사합니다. – shad