1
我是MVC中的新成员,并且正在使用MVC 3.任何人都可以解释在MVC中使用BaseViewModel的优点吗?为什么在MVC中使用BaseViewModel?
我是MVC中的新成员,并且正在使用MVC 3.任何人都可以解释在MVC中使用BaseViewModel的优点吗?为什么在MVC中使用BaseViewModel?
它可以帮助您避免重复的代码。例如,在博客上,您可能想要在每个页面上显示标签列表。你可以做到这一点的一种方法是给每个视图模型添加一个List<Tag>
属性。或者,您可以使用List<Tag>
属性创建一个BaseViewModel
以节省使用相同属性混淆视图模型的情况。
从这:
class HomeViewModel
{
public List<Tag> Tags { get; set; }
}
class PostsViewModel
{
public List<Tag> Tags { get; set; }
}
要这样:
abstract class BaseViewModel
{
public List<Tag> Tags { get; set; }
public BaseViewModel()
{
Tags = GetTagsFromSomewhere();
}
}
class HomeViewModel : BaseViewModel { }
class PostsViewModel : BaseViewModel { }
希望这有助于。