【发布时间】:2013-03-06 10:44:38
【问题描述】:
我已经开始重构一些项目,并且由于代码重复,我遇到了一些似乎写错的代码,但是我不知道如何以最佳方式重构它。当然,我可以通过提取函数和清理一些代码,使用泛型来删除代码重复,但我想也许我可以做的不止这些。故事是:
我们有一个页面(view),即根据用户选择渲染多个局部视图: 我们有一些链接,例如:
@Html.ActionLink("Create", "SetCreateNewMessageView")</br>
@Html.ActionLink("GetMessagesHistory", "SetGetMessagesHistoryView")</br>
@Html.ActionLink("UpdateMessageStatus", "SetUpdateMessageStatusView")</br>
@Html.ActionLink("AddUser", "SetAddUserView")</br>
@Html.ActionLink("RemoveUser", "SetRemoveUserView")</br>
每次点击都会以这种方式呈现局部视图 -> 控制器:
var containModel = new CreatorsViewModel();
containModel.CreateNewMessage = model;
**containModel.view = 1;**
return View("Index", containModel);
这是为每个链接制作的,然后在页面的视图中,以下条件渲染是:
@if (Model.view == 1)
{ // Render Partial view
}
在我的案例中是否有一些最佳实践(根据用户选择呈现不同的局部视图)或者仅删除代码重复就足够了?
谢谢
【问题讨论】:
-
与其尝试使用枚举,不如休息一下
标签: c# asp.net-mvc razor refactoring partial-views