[问题] MVC model的设计

楼主: vi000246 (Vi)   2016-06-02 18:13:23
目前的MODEL是依照数据库的字段开的
因为专案的需要 要在搜寻字段新增数个INPUT 字段
可能是别的MODEL的字段 也可能只是为了搜寻方便开的
这样就要在原本的MODEL新增这些和数据库不相干的字段
用来承接前端传来INPUT字段的数值
我看我同事的做法是数据库MODEL和搜寻用的字段分开
为搜寻字段开新的MODEL
这样会有资料重复的问题
可是比起原本杂乱的MODEL 这样设计又比较清楚
想问有什么设计模式能解决这问题吗
能方便扩充字段 又不会和原本依数据库字段设计的MODEL混在一起
作者: leon555 (长猫)   2016-06-02 19:40:00
我猜你需要Viewmodel?
作者: jinmin88 (昼伏夜出)   2016-06-02 20:06:00
去看WPF的MVVM吧 有很多sample project可以参考
楼主: vi000246 (Vi)   2016-06-02 20:38:00
感谢两位的关键字 明天来试试看
作者: kevintsengtw (mrkt)   2016-06-03 13:10:00
要注意 MVC 的 viewmpdelmvc viewmodel 与 mvvm 的有所不同,不要有行为,切记切记
作者: testPtt (测试)   2016-06-03 13:21:00
据我所知mvvm的精神在binding
楼主: vi000246 (Vi)   2016-06-03 20:56:00
我们专案是把逻辑层另外切出来 和MVC的Model分开了
作者: GoalBased (Artificail Intelligence)   2016-06-03 21:16:00
viewmodel
作者: Litfal (Litfal)   2016-06-04 14:57:00
BLL层会有它的DTO,不需要用dynamic
作者: kevintsengtw (mrkt)   2016-06-04 21:53:00
当看到属于表现层的 viewmodel 会跑到商业逻辑层时,就不对劲了
楼主: vi000246 (Vi)   2016-06-05 10:52:00
对啊 所以应该要从Data access层做Model的联集被viewModel的名称给骗到了 以为一定要做在表现层
作者: GoalBased (Artificail Intelligence)   2016-06-05 13:17:00
本来就是做在表现层了..你好像有什么误会了?让我想起楼楼上的文章..初学者别看以下文章..

Links booklink

Contact Us: admin [ a t ] ucptt.com