2014-08-27 4 views
0

나는 모든보기 사이에 공유되는 내 컨트롤러에 뭔가가 있습니다. 그래서 나는 _default.cshtml를 생성하고이 코드 내 뷰의 레이아웃을 설정하려고 : Layout = "_default.cshtml";컨트롤러의 기본보기를 설정하는 방법은 무엇입니까?

을이 내 _default.cshtml입니다 :

@{ 
    ViewBag.Title = "ahmadali shafiee"; 
} 

@section links{ 
    <ul id="links"> 
     <li class="inner-li-en inner-li"> 
      <a href="~/en/about">about</a> 
     </li> 
     <li class="inner-li-en inner-li"> 
      <a href="http://2barnamenevis.com">blog</a> 
     </li> 
     <li class="inner-li-en inner-li"> 
      <a href="">projects</a> 
     </li> 
     <li class="inner-li-en inner-li"> 
      <a href="http://photo.ahmadalli.net">photoblog</a> 
     </li> 
     <li class="inner-li-en inner-li"> 
      <a href="mailto:[email protected]">contact</a> 
     </li> 
    </ul> 
} 

@section lang{ 
    <div id="lang-fa" class="lang"><a href="fa">فارسی</a></div> 
} 

@RenderBody() 

이 내이다 :

@{ 
    Layout = "_default.cshtml"; 
} 

Some other content 

하지만, 결과물은 내가 예상 한 결과가 아닙니다. _default.cshtml에 레이아웃을 설정하지 않았으므로 _default.cshtml을 최종 레이아웃으로 사용하지만 _layout.cshtml을 사용해야합니다.

+0

레이아웃은 마스터 페이지를 의미합니다. _default 페이지에 지정된 페이지가 없으므로 페이지가 중지됩니다. http://www.mikesdotnetting.com/Article/164/Nested-Layout-Pages-with-Razor – jle

+0

@jle 페이지에서 레이아웃을 설정하지 않으면 "무엇을 사용합니까?"라는 면도기는 말하지 않습니다. 그것은'_ViewStart.cshtml'에서 말했습니까? –

+0

귀하의보기 시작은 어디에 저장되어 있습니까? – jle

답변

0

"뷰가 layout 다음 _ViewStart.cshtml를 사용하지 않는 경우"정확하지 않다는 논리를 보인다 내 _default.cshtmlLayout = "~/Views/Shared/_Layout.cshtml";를 추가해야이 문제를 해결합니다.

0

응용 프로그램의 Views 폴더 안에있는 _ViewStart.cshtml에서 페이지에서하는 것처럼 설정할 수 있습니다.

+0

나는 이미'_ViewStart.cshtml'을 가지고 있습니다. 그래서 내 관점에서'layout'을 설정하지 않으면 면도기가'_ViewStart.cshtml'을 사용해야한다는 것을 의미하지 않습니까? –

+0

@ahmadalishafiee 네, 그냥 그렇게 작동해야합니다. jle은 체크해야한다고 생각하는 중첩 된 레이아웃에 대해 서술했습니다. –

관련 문제