使用ViewModel上的标志的多个视图或单个视图

时间:2010-10-27 15:47:13

标签: asp.net-mvc

我的情况是控制器操作应该导致有关给定对象的信息以不同方式显示,具体取决于用户对该对象的权限。

目前,控制器操作代码会相应地返回两个视图之一:Info.ascxInfo_ViewOnly.ascx

由于这两个视图之间的差异非常小(我只需要更改每个视图的格式)我正在考虑使用一个视图(Info.ascx)并使用View的模型将用户的权限传递给视图

您认为哪种方法更可取?另外的建议也欢迎: - )

1 个答案:

答案 0 :(得分:1)

您的视图中存在“If Else”逻辑,这表明您可能需要将视图拆分为多个相应的视图。您的控制器可能是评估用户权限并将请求路由到最合适视图的最佳位置 - 因此“If Else”逻辑可能应该出现在控制器而不是视图中。