【发布时间】:2010-04-01 12:37:32
【问题描述】:
我们有一个使用实体框架查询 SQL 数据库的 WCF 服务。 WCF 服务是我们的数据访问层。如果我们的任何应用程序从数据库读取/写入数据,我们调用 WCF 服务上的方法。 WCF 服务将 EntityObject 序列化到客户端应用程序。
在客户端应用程序(例如 WPF 应用程序或 ASP.NET 应用程序)中,我们可以更新实体属性并调用 WCF 服务,将实体作为参数传递,以执行数据库更新。被更新的实体可能有数百个与之相关的子实体。
例如,客户实体将具有项目属性,该属性是项目实体的列表。如果我们的客户端应用程序更改了客户实体上的简单标量属性,例如 CustomerName,我们需要通过调用 WCF 服务上的更新方法将该更改保存到数据库中。问题是,我们将 Customer 实体传递给要更新的服务,但所有附加的项目也被序列化并传递给 WCF 服务,即使 WCF 服务更新方法只涉及对 Customer 上的标量属性的更改实体。显然,我们正在序列化和传输比需要更多的数据。
有人遇到过这个问题吗?不知何故,我只想将 Customer 实体序列化回 WCF 服务,而不对整个对象图进行深度序列化。
谢谢。
【问题讨论】:
标签: .net wcf entity-framework serialization