2010-05-23 40 views
0

我插入asp.net MVC視圖C#邏輯管理佈局類似如下:在同一MVC HTML佈局C#代碼格式化

<% if (Model.People.Count > 0) { %> 
    <% foreach (var person in Model.People) { %>  
     ... 
<% }} else { %> 
    <span class="error">Sorry, no people</span> 
<%} %> 

我儘量減少<%%>代碼放置「{」符號因爲它的條件(Java風格)。之後,Html佈局看起來更加清晰。

您是否將C#格式規則應用於<%%> html注入「}」應該在新行或以不同方式管理佈局?

預先感謝您!

+0

這裏的實際問題是什麼? – 2010-05-25 06:08:57

+0

如何最小化html c#代碼注入的複雜性。 – 2010-05-25 06:21:24

回答

0

它完全取決於你,無論你發現更可讀和可維護。

較少內聯服務器塊,但您有更好的(在防止運行時代碼編譯錯誤方面)。

+0

我這麼認爲。但是,當我將css類應用到元素或者必須顯示/隱藏某些依賴於實體屬性或集合大小的塊時,通常html佈局會混入代碼注入。你如何保持這種狀況可以維持? – 2010-05-25 06:09:50

+0

再一次,完全取決於場景。在上面的場景中,您希望從模型中打印出人員,如果沒有人員顯示範圍。 實際上,您可以檢查控制器中的模型數據,並根據該數據返回適當的視圖。 換句話說,您將有一個用於結果,另一個用於沒有結果並返回控制器中相應的視圖。 如果你的視圖中有太多的代碼,你可能會得到需要移動到模型或控制器的代碼。 – RPM1984 2010-05-25 06:38:23

+0

我來自asp.net web.forms世界與ContentPlaceHolder可見是/否HTML佈局驅動的方法:)我會採取平衡的方法選擇不同的意見和條件意見。謝謝 – 2010-05-25 08:01:23