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

查看模型ASP.NET与模型类类似的MVC

  •  0
  • mare  · 技术社区  · 15 年前

    如果您有基于SQL表的模型类,例如使用Entity Framework为您生成实体和数据访问,但您仍然希望一个或两个属性不同和/或被排除,您该如何处理这种情况。

    我没有问题,有单独的视图模型类和模型类,但有越来越多的情况下,差异只是很小。因此,我最终将模型类属性复制到视图模型类,并更改/删除所需的属性。

    3 回复  |  直到 15 年前
        1
  •  0
  •   Larsenal    15 年前

    您可以简单地使ViewModel成为模型的子类。根据需要,您可以重构ViewModels,甚至从模型中删除其继承。

        2
  •  2
  •   queen3    15 年前

    我从不在POST操作中使用域模型(以积累用户输入)-好吧,除非通过实体ID绑定到db。但我有时会把它们传给观点。这实际上是不好的-你看不到视图真正需要什么,你经常开始在视图中创建业务逻辑查询-但是当这变得有点糟糕时(例如,视图需要以某种方式转换域模型来查询/过滤数据),添加视图模型并将其更改为适当的实现就相当容易了。从某种意义上说,这充其量就是KISS/YAGNI——如果它有效,而且没有缺点,为什么不呢?把它改成更复杂的东西,只有情况开始需要它。

        3
  •  0
  •   nerraga    15 年前

    您还可以选择创建viewmodel作为模型的简单属性副本,然后依赖于 Automapper