1
对于ViewData,而不是使用字符串作为键,我使用枚举。我现在有一个大名单,可以从任何地方访问。一些枚举在多个Controller/View对中使用。有没有更好的方法来对这些枚举进行分类,而不仅仅是一个不断增长的列表?ASP.NET MVC:枚举和ViewData []键
我不喜欢硬编码字符串是常见的ViewData。枚举提供了极大的智能感知。我想过把控制器的枚举分类。虽然这并不奏效,但因为特定的枚举值可能会在控制器之间共享,并且需要一些集中的位置。
正确,但如果我的控制器访问2+模型类以获取特定值,则不起作用。该视图可以只键入一个类。 ViewData允许我从几个类中取几个值,并将它们发送到View,除了显示值之外,它什么也不做。 – 4thSpace 2009-08-05 14:05:23
ViewModel应该支持View,所以它可以拥有你需要的任何属性,并且可以像你想要的那样复杂。数据来自何处无关 - 这是财务主任的责任。每个ViewModel都可以针对特定的视图进行定制,因此您可以准确地提供它需要的数据。如果你想发送复杂的数据到视图,只需创建一个新的ViewModel,将这些复杂的类作为单独的属性。实际上不需要使用ViewData字典。 – 2009-08-05 18:04:12