2010-02-15 5 views
4

마스터 페이지 (헤더, 메뉴 및 일부 링크 포함)에서 사용되는 asp.net 콘텐츠 페이지가 있습니다. 마스터 페이지없이 (헤더와 메뉴를 표시하지 않고) 다른 상황에서 재사용하고 싶습니다. 또는 여하튼 가능하다면 빈 마스터 페이지로 재사용하고 싶습니다. 나는 명백한 이유로 페이지 전체를 가져 와서 독립 실행 형 복제본을 작성함으로써 DRY 원칙을 위반하기를 원하지 않습니다. 어떻게 든 가능합니까?두 개의 서로 다른 마스터 페이지에서 동일한 콘텐츠 페이지를 사용할 수 있습니까?

답변

4

예, 콘텐츠 페이지 Page_PreInit 방법에 동적으로 마스터 페이지를 설정할 수 있습니다

private void Page_PreInit(object sender, EventArgs e) 
{ 
    this.MasterPageFile = "MyMasterPage.master" 
} 

동적으로 전달하는 마스터 페이지 파일 이름을 선택할 수있는 몇 가지 논리를 설정 이제 하나의 콘텐츠 페이지를 많은 마스터 페이지와 공유하고 있습니다.

+0

나는 똑같은 생각을했습니다! 그러면 기존 페이지를 컨트롤로 변환 할 필요가 없습니다. –

4
+0

합리적으로 들리 겠지만, 아마도 이런 식으로 갈 것입니다. 감사합니다. 유일한 문제는 이미 기존 페이지를 컨트롤로 변환해야한다는 것입니다.하지만 잘하면 너무 많은 작업이 아닙니다. –

관련 문제