WCF中的EntityFramework序列化问题 - 在层之间传递实体

时间:2011-03-23 01:15:16

标签: entity-framework serialization wcf tiers

场景是我有3层/物理机器;

Tier1: Client(UI),

-- Firewall 1-- 
Tier2: WCF Facade, 

-- Firewall 2-- 
Tier3: WCF proper, DB Access Layer, Entity Framework(project with edmx fiels), DB

从第3层开始,在WCF中,我在各种操作合同(方法)中返回实体(表格);

从第2层,在WCF Facade中,我向WCF Proper添加了一个服务引用,可以访问实体对象,包括它们的关系(链接表)等;然后我尝试在WCF Facade的各种操作合同中根据需要公开一些实体对象;

从第1层开始,将WCF Facade添加为服务引用并在DESIGN时间访问方法没有问题,但在RUNTIME发生错误“基础连接已关闭。连接意外关闭”。

我已经知道这与超时无关,而是因为实体无法在tier1和tier2之间序列化;如果我返回一个没有链接关系的单个实体,这可以正常工作。

Q1。如何在层之间传递EntityFramework实体(其中包含子/父实体)? (忽略它是否合适)

Q2。在Tier2和Tier3之间传递所述实体没有问题,并且关系通过正常;为什么Tier1和Tier2之间的不同使它突然变得不可序列化?

0 个答案:

没有答案