显示实体和附加信息的最佳方法?

时间:2011-04-01 16:08:04

标签: c# wpf binding entity-framework-4

假设我的实体框架模型中有一个名为Server的实体,并且有一个名为Address的字符串属性。

加载我的视图后,我需要:

  1. 从模型中获取地址列表 (很简单)。
  2. 用完并从中获取一些数据 每个地址都通过JSON。
  3. 显示具有的DataGrid 服务器地址,包含所有信息 取出。
  4. 不需要保存功能,这只是显示信息。我是否需要创建一个全新的对象并填充这些对象的列表以进行绑定?如果是这样,从我的POCO实体继承,添加更多字段,填充/绑定到那些列表是不是很糟糕?或者对我的数据库执行Linq查询,动态生成匿名类型的集合并绑定到它会更好吗?或者还有另一种我不知道的更好的方法吗?

    正如您从我的问题历史中可以看出的那样,我是.NET4 / WPF的新手并且正在学习这个项目,但我正在努力学习如何正确地做到这一点,而不是蛮力,所以对不起,如果这对你们来说是一个明显的问题。 :)

1 个答案:

答案 0 :(得分:2)

如果您知道每次我建议将数据加载到一起时您肯定需要数据。假设您的模型看起来像这样:服务器 - > ServerAddresses - > AddressDetail然后我认为你最好一次性填充所有信息。

加载数据时,请执行以下操作:

using (var context in new EntityContext())
{
  var model = context.Servers.Include("ServerAddresses.AddressDetail").Where(s => s.Foo == "Bar")
}

并将您的视图绑定到该模型,而不是稍后为每个项目延迟加载。是的,最好将此模型加载到自定义结构中进行序列化(我假设您正在执行此操作,因为您指的是JSON。