Asp.net MVC Html布局C代码格式

Asp.net MVC Html布局C代码格式,asp.net,html,asp.net-mvc,Asp.net,Html,Asp.net Mvc,我在asp.net mvc视图中插入管理布局的C逻辑,如下所示: <% if (Model.People.Count > 0 ) { %> <% foreach (var person in Model.People) { %> ... <% }} else { %> <span class="error">Sorry, no people</span> <%} %> 我尽量减少将

我在asp.net mvc视图中插入管理布局的C逻辑,如下所示:

<% if (Model.People.Count > 0 ) { %>
   <% foreach (var person in Model.People) { %>      
      ...
<% }} else { %>
   <span class="error">Sorry, no people</span>
<%} %>
我尽量减少将{符号放在同一行上的代码,因为它的条件java style.Html布局在那之后看起来更清晰

您是否将C格式规则应用于html注入}应位于新行还是以不同的方式管理布局


提前谢谢你

这完全取决于您,您发现的任何内容都更具可读性和可维护性


在防止运行时代码编译错误方面,内联服务器块越少越好。

这里的实际问题是什么?如何最大限度地降低html c代码注入的复杂性。我认为是这样。但是,当我将css类应用于元素时,或者当我必须显示/隐藏一些依赖于实体属性或集合大小的块时,html布局常常与注入的代码过度混合。如何保持这种情况的可维护性?同样,这完全取决于场景。在上面的场景中,您希望打印模型中的人员,如果没有人员,则显示一个跨度。实际上,您可以检查控制器中的模型数据,并基于该数据返回适当的视图。换句话说,一个用于结果,另一个用于无结果,并在控制器中返回相应的视图。如果您的视图中有太多的代码,很可能您有需要移动到模型或控制器中的代码。我来自asp.net web.forms world,其中ContentPlaceHolder可见是/否html布局驱动方法:我将采用平衡方法在不同视图和条件视图之间进行选择。谢谢你,我也一样-总是有写asp:的诱惑,但你必须避免它。这就是我喜欢MVC的原因——它迫使您了解web开发,而不是像web表单那样隐藏底层实现。厚模型、灯光控制器、哑视图。这就是我使用MVC应用程序的方法!