我正在开发一个我认为比较庞大的ASP.NET MVC网站。目前,有近100个编辑器模板(全部针对1个控制器),而且这个数量还会增加。
我的目标是通过组织视图使其更易于查找和版本控制。随着时间的推移,“版本控制”步骤将导致视图数量增加。可以将这个项目想象成一个问答应用程序,其中创建考试并可以在以后进行调取。基本上,对于这个特定的项目,视图/编辑器模板一旦进入生产就不能真正改变,因此必须为将来使用创建新副本。对旧视图的引用仍然存在,使得那次考试看起来和行为与一年前相同。同样,新考试将自动获取新版本的视图,并使用该版本。
我希望拥有这种类型的结构,但愿意接受其他想法。
Views/Shared/EditorTemplates/Common
Views/Shared/EditorTemplates/Common/v2
Views/Shared/EditorTemplates/Common/v3
Views/Shared/EditorTemplates/Department
Views/Shared/EditorTemplates/Department/v2
注意:尽管我将拥有版本化的子目录,这意味着我将拥有同一模型和模板的多个版本,但新文件将具有唯一的文件名。此外,我还尝试使用 Razor 生成器来编译我的视图。不确定是否可以扩展以添加其他 EditorTemplate 搜索路径。