에서MVC/면도기문에,나는'm 이해하려고 하는 우리는 왜 필요한@RenderBody
.
예를 들어(코드에서 찍은예)
<html>
<head>
<meta charset="utf-8" />
<title>My WebSite</title>
<style>
#container { width: 700px; }
#left { float: left; width: 150px; }
#content { padding: 0 210px 0 160px; }
#right { float: right; width: 200px; }
.clear { clear: both; }
</style>
</head>
<body>
<div id="container">
<div id="left">
@RenderSection("left", required:false)
</div>
<div id="content">
@RenderBody()
</div>
<div id="right">
@RenderSection("right", required:false)
</div>
<div class="clear"></div>
</div>
</body>
</html>
@{
Layout = "~/_3ColLayout.cshtml";
}
<h1>Main Content</h1>
@section left {
<h1>Left Content</h1>
}
@section right {
<h1>Right Content</h1>
}
왜't 나는 단순히 사용하는@RenderSection
에 대한 모든 것을,다음과 같다:
<div id="content">
@RenderSection("Body", required:true)
</div>
@section Body{
<h1>Body Content</h1>
}
시작으로@RenderBody
,이것은 매우 중요합니다. 귀하의 _layout 가 있습니다. 이것은 당신의 뷰가 표시됩니다. 만약 당신이 그것을 떠나,귀하의 앱은 죽습니다(생각에는 실행 시간으로 전망하지 않은 컴파일).
[교정: 없이 Renderbody,보기를 참조하는 이 특정한 레이아웃에 죽을 것이 run-time. (주는 레이아웃은 자신을 선택 사항입니다.)]
섹션 코드 블록에서 정의하기가 비슷한 이름
수있는 해당하는 코드 블록에서 확인할 수 있게 되었습니다.
@section Navbar{
<!-- Content Here -->
}
제가 강조하는할 수 있기 때문에 메뉴 바은 delcared필수:false
섹션은 방법으로 각각 보기를 공유할 수 있습의 조각 기능/마크업 _layout.
후속: 에서 나의 겸손 시간의 MVC 개발을 배웠 겸손하게 사용하의 섹션이 있습니다.
섹션에 유용한지 확인하 JS 참조는 배치에서 HTML