代码之家  ›  专栏  ›  技术社区  ›  Roman

什么是最佳的ViewModel命名约定?[复制品]

  •  18
  • Roman  · 技术社区  · 14 年前

    这个问题已经有了答案:

    我正在编写一个包含很多视图/局部视图的ASP.NET MVC2项目。阅读好的MVC实践,我一直鼓励创建视图模型。它真的很好,这样做是有意义的,但我最近注意到,我不再容易记住什么模型是什么视图。我希望有一个很好的视图模型命名约定,可以处理大型项目。

    我的问题是,这种情况能否得到改善?

    5 回复  |  直到 9 年前
        1
  •  20
  •   jsmith    9 年前

    我喜欢保持简单,例如,如果您有一个名为文件夹的对象:

    view=“文件夹视图.xaml”

    viewModel=“folderView模型.cs”

        2
  •  2
  •   user151323    14 年前

    简单化:

    ModelName = ViewName + "Model";
    

    如果有模型层次结构,有时需要将模型从视图传递到局部视图。在这种情况下,可以放弃上述规则。

        3
  •  2
  •   Monstieur    11 年前

    对于ASP.NET MVC,我将视图模型保存在 ViewModels.{Controller} 名称空间和类名 {Action} . 我不会像视图文件没有视图后缀那样使用视图模型后缀。

        4
  •  1
  •   Oppositional    14 年前

    如果要将视图模型与视图保持在同一程序集中,除了视图模型类的视图名称视图模型等简单命名方案外,我还使用了一个技巧来帮助组织视图模型中的视图:

    1. 创建视图类(shell.xaml)
    2. 在同一位置,添加视图 模型类(ShellViewModel.cs)
    3. 将视图模型类文件重命名为 与视图同名,但 将.model附加到文件路径 (外壳.model.cs)
    4. 编辑项目文件(或者 手动或使用电源命令 v)中的扩展
    5. 找到 项目中的视图模型类 XML文档
    6. 添加子元素 其内容是 查看类
    7. 保存更改并重新加载项目

    这将导致视图模型类在视图的代码隐藏文件一侧进行可视化分组。

    作为您的视图,除了视图模型类的视图名称视图模型等简单命名方案外,我还使用了一个技巧来帮助组织视图模型的视图:

    1. 创建视图类(shell.xaml)
    2. 在同一位置,添加视图 模型类(ShellViewModel.cs)
    3. 将视图模型类文件重命名为 与视图同名,但 将.model附加到文件路径 (外壳.model.cs)
    4. 编辑项目文件(或者 手动或使用电源命令 v)中的扩展
    5. 定位 编译 元素用于 项目中的视图模型类 XML文档
    6. 添加一个孩子 依赖的 要素 其内容是 视图类
    7. 保存更改并重新加载项目

    这将导致视图模型类沿着视图的代码隐藏文件进行可视化分组。

    alt text

        5
  •  0
  •   John Farrell    14 年前

    我已经开始更进一步,并指定是否使用ViewModel通过editorfor以表单结尾来生成表单。有助于保持窗体与简单的显示模型易于识别。