2011-05-24 44 views
0

我想知道如何在Razor視圖的局部視圖中輸入@section。這是可能的,或者我必須把它放在一個視圖中?asp.net MVC razorview rendersection

謝謝。

+0

我不明白爲什麼你不能 - 視覺工作室似乎讓它發生,但你打算如何強制它渲染?你想要做嵌套partials或什麼? – Fourth 2011-05-24 03:44:47

+0

我想將某些腳本或css放在不同的partialview中,但我確定partialview中的區塊不起作用。 – 2011-05-24 04:08:23

+0

@section CSS {0} {0} {0}} >> won 2011-05-24 04:13:47

回答

0

爲什麼不嘗試創建一個包含所有javascript和css的局部視圖,並只在佈局中渲染該局部視圖?我不認爲你需要部分來完成。指向各個部分的內容是告訴他們完整的視圖,他們可以爲他們設置特定的部分,部分視圖不會強制他們看起來像任何東西。

<!DOCTYPE html> 
<html> 
<head> 
    <title>@ViewBag.Title</title> 
    @Html.Partial("_HeaderLinksAndScripts") 
</head> 
<body> 
    <div class="page"> 
     <div id="header"> 
      <div id="title"> 
       <h1>My MVC Application</h1> 
      </div> 
      <div id="logindisplay"> 
       @Html.Partial("_LogOnPartial") 
      </div> 
      <div id="menucontainer"> 
       @Html.Partial("_MenuPartial") 
      </div> 
     </div> 
     <div id="main"> 
      @RenderBody() 
     </div> 
     <div id="footer"> 
      this is a footer 
     </div> 
    </div> 
    @Html.Partial("_FooterScripts") 
</body> 
</html> 

只需將站點範圍的CSS和javascripts放在適當的局部視圖中即可。

+0

當然,這將工作。我只是想詳細地把所有的腳本和CSS放在我的佈局的正確部分:) – 2011-05-24 04:17:10

+0

感謝您的解釋。也許我沒有詳細說明我的問題。我有一個模板(局部視圖),將分享給許多視圖。我不想把腳本/ CSS放在每個視圖上,只是爲了相同的功能,我想把所有腳本/ css放在佈局中的正確部分使用@section – 2011-05-24 04:42:16

+0

http://stackoverflow.com/questions/5433531/using-sections-in-editor-display-templates/5433722#5433722檢查這裏,那可能更多沿着你在找什麼。 – Fourth 2011-05-24 11:28:06

0

將您的腳本放在該部分視圖中而不是放在一個部分中(因爲您不能在部分中執行@section),或者將它們放在主佈局中並有條件地控制其渲染。