2

假设我想在我的应用程序开发的某个部分使用 Linq to Entity 查询将数据提取到一个匿名对象(即从两个或多个表中提取数据并将其存储在一个变量中)。后来我需要一个 Razor 视图来访问这个获取/匿名的数据。我应该在这里做什么?

我的想法是设计另一个 ViewModel 来保存匿名类型属性的相应属性并制作对该 ViewModel 进行强类型化的视图/剃须刀?这是在 EF 4.1 中使用匿名类型的正确方法吗?即为每个匿名类型创建一个 ViewModel 并将 Fetched 数据存储到它的对象中。

4

1 回答 1

4

Anonymous 类型不打算在方法范围之外使用,因此它们通常只是一次性类型,只能在该方法中使用。

我更倾向于将数据加载到 ViewModel 上的常规类中,以将模型与视图完全分离。我将使用自定义类来保存获取的数据,然后在控制器中使用该类填充 ViewModel,并为 ViewModel 提供强类型的剃刀视图。这有点不紧凑,但具有更好的关注点分离。

于 2012-01-09T05:59:05.440 回答