日期:2014-05-20  浏览次数:20719 次

linq to entity + WCF
情况如下
如果单独使用linq to entity
那么查询的时候 用到那张表 监控数据库执行的sql 就只会查询使用到的表
关联的(有主外键约束) 因为没有使用到 所以不会被查询

但如果通过WCF 在UI层只使用某一张表的数据
监控数据库执行的sql 有主外键的 相关的都要查询

请问为什么会这样
怎么解决

------解决方案--------------------
Include可以返回包含外键的表。
------解决方案--------------------
估计你的wcf和单独调用的取数据逻辑有些不同
它只是个通讯方案,
至于取数据的逻辑,它完全不关注,
保持一致就行,他不会自己去读取什么数据,两回事
------解决方案--------------------
还有一个办法,可以用 POCO Generator 重新生成 entity 部分的代码。那样就可以直接返回了。


http://blog.csdn.net/fangxinggood/article/details/6452549
------解决方案--------------------
因为 EF 的 NavigateProperty 无法序列化。
------解决方案--------------------
db.ContextOptions.LazyLoadingEnabled = false;
db.ContextOptions.ProxyCreationEnabled = false;