我在想,是否将一个通用的视图模型作为视图的输入是一个好的实践?
我这样想是因为有人提到,除非他开始制作通用视图和通用视图模型,否则他预计会做很多重复的代码。
所以基本上视图只是一组控件。一个视图可能有2个控件(比如文本框和单选按钮),另一个视图可能有50个控件。
它们都具有相同的外观和感觉(只是随着控件数量的增加而增长)。基本上,他认为视图模型接收对象(域对象),查看它并查看50个字段,然后呈现正确的控件类型。
我猜编辑模板可以用于确定控件,但我对通用视图模型还没有完全信服。
我喜欢泛型,它们可以做很强大的事情,在某些情况下它们很好,但总体而言我并不是特别喜欢它们,尽量避免使用。
我发现大多数时候它可以减少重复代码,但有时它会使代码变得更加复杂。当然,这可能只是因为我还是一个相对新手程序员,可能还超出了我的技能水平。
我对它的下一个问题是,我认为视图模型应该尽可能扁平化,并且仅公开实际将要使用的数据,以便人们不会开始使用本来就不应该出现在视图中的属性。
我对它的下一个问题是,如果您有一些包含对象的复杂对象,则它可能会继续下去。它可能会持续很长时间。