Asp.net mvc 3 在MVC视图中处理临时更改请求的提示

Asp.net mvc 3 在MVC视图中处理临时更改请求的提示,asp.net-mvc-3,version-control,architecture,change-management,Asp.net Mvc 3,Version Control,Architecture,Change Management,我正在处理一个应用程序,对于这个应用程序,一个临时变更请求已经进入到一个给定的特性中。具体来说,该公司目前只希望管理给定客户的物理地址,并希望我们删除添加邮寄地址的选项 这项功能在将来很可能需要重新引入,因此,我想知道目前处理删除的最佳方法是什么。在ViewModel上具有附加属性不一定是个问题,但这很麻烦。当涉及到视图本身时,问题就更大了。我们需要删除UI元素,但是,我们需要让它在将来很容易恢复 那么…我要注释掉不需要的代码位吗?这是最简单的方法,但是,它很混乱 是否创建新视图和视图模型?如果

我正在处理一个应用程序,对于这个应用程序,一个临时变更请求已经进入到一个给定的特性中。具体来说,该公司目前只希望管理给定客户的物理地址,并希望我们删除添加邮寄地址的选项

这项功能在将来很可能需要重新引入,因此,我想知道目前处理删除的最佳方法是什么。在ViewModel上具有附加属性不一定是个问题,但这很麻烦。当涉及到视图本身时,问题就更大了。我们需要删除UI元素,但是,我们需要让它在将来很容易恢复

那么…我要注释掉不需要的代码位吗?这是最简单的方法,但是,它很混乱

是否创建新视图和视图模型?如果是的话,哪里是保存原件的合适地方?我们的应用程序是在源代码管理(SVN)下的,因此,理论上我们可以回到这个版本,但是,对于这样一个小的更改来说,这似乎有些过分了

还有其他人遇到过类似的情况吗?关于如何最好地处理这个问题,有什么建议吗

那么…我要注释掉不需要的代码位吗

不,那会很混乱。这就是版本控制的目的

是否创建新视图和视图模型

是的,替换原来的

如果是的话,哪里是保存原件的合适地方

版本控制

我们的应用程序是在源代码管理(SVN)下的,因此,理论上我们可以回到这个版本,但是,对于这样一个小的更改来说,这似乎有些过分了

过度杀戮?不。这是风投最擅长的=>他们保留修订历史记录。您也可以考虑创建一个标签,以便以后可以轻松地返回。

那么…我要注释掉不需要的代码位吗

不,那会很混乱。这就是版本控制的目的

是否创建新视图和视图模型

是的,替换原来的

如果是的话,哪里是保存原件的合适地方

版本控制

我们的应用程序是在源代码管理(SVN)下的,因此,理论上我们可以回到这个版本,但是,对于这样一个小的更改来说,这似乎有些过分了


过度杀戮?不。这是风投最擅长的=>他们保留修订历史记录。您也可以考虑创建一个标签,以便以后可以轻松地返回。

什么视图引擎?事实上,这可能重要,也可能不重要

从“我可能需要这一步”的观点来看,我会考虑移动目前正在消失的UI位,并可能重新出现在MVC用户控件中。它不像到处注释代码那样“凌乱”。现在可以将其排除在外


至于ViewModel?有两种可能性。短极当然是将位添加到ViewModel,即使没有使用,但这意味着您正在旋转未使用的数据,并且没有明确的使用时间框架。但是,当您需要额外的信息时,您总是可以创建一个派生类,并在开始使用时让用户控件将视图模型转换为派生类(协方差和逆变是您的朋友),从而在业务“恢复正常”时使代码更改非常小。

什么视图引擎?事实上,这可能重要,也可能不重要

从“我可能需要这一步”的观点来看,我会考虑移动目前正在消失的UI位,并可能重新出现在MVC用户控件中。它不像到处注释代码那样“凌乱”。现在可以将其排除在外


至于ViewModel?有两种可能性。短极当然是将位添加到ViewModel,即使没有使用,但这意味着您正在旋转未使用的数据,并且没有明确的使用时间框架。但是,当您需要额外的信息时,您总是可以创建一个派生类,并在您开始使用时让用户控件将视图模型转换为派生类(协方差和逆变是您的朋友),从而在业务“恢复正常”时使代码更改非常小.

你的快速回答证实了我的想法,即这是最好的方法,但我仍然感到非常犹豫。在SVN中,我能找到的最接近标签的是一个标签,为此目的使用标签不适合我们的开发过程(我们标记版本,以防我们需要回到branch进行bug修复)。您的快速回答证实了我的想法,这是最好的方法,但我仍然感到非常犹豫。在SVN中,我能找到的最接近标签的地方是标签,而为此目的使用标签并不适合我们的开发过程(我们标记版本,以防我们需要回到branch进行bug修复)。视图引擎是Razor,但是,我同意,这真的不重要。我已经决定采用类似的方法,从基础中导出我的定制视图模型,并从可组合的局部视图中构建视图,这样当不可避免地需要时,将这一部分添加回来将是一件简单的事情视图引擎是剃刀,但是,我同意,这真的不重要。我已经决定采用类似的方法,从基础中导出我的定制ViewModel,并从可组合的局部视图中构建视图,这样,当不可避免地需要时,将这一部分添加回来将是一件简单的事情