我发现自己在我的视图中编写了很多类似下面代码的代码。在这种情况下,我想为新手添加一些解释性HTML,并为专家用户添加不同的HTML。MVC视图中的分支逻辑
<% if (ViewData["novice"] != null) { %>
some extra HTML for a novice
<% } else { %>
some HTML for an expert
<% } %>
这是表示逻辑,所以它是有道理的,它是在一个视图与控制器。然而,它变得非常难看,特别是当ReSharper想要移动所有大括号以使其变得更丑陋时(有没有办法关闭视图?)。
我的问题是,这是否是正确的,或者我应该在控制器转移到两个不同的看法?如果我做了两个视图,我会有很多重复的HTML来维护。
或者我应该做的是共同的东西共享局部视图两个独立的看法?
我可以看到这个优点,但是如果文本是复杂的HTML标记,比如图片和内容呢?现在你的控制器里有HTML。 另外,感谢您修复我的代码示例 – 2010-05-26 01:53:43
Nice lomax好得多。我喜欢。 +1 – 2010-05-26 01:58:43
这取决于复杂文本的情况以及需要多少更改,但我不明白为什么不能使用同一方法呈现可变部分? – lomaxx 2010-05-26 23:37:16