C# 实体框架/WCF连接顺序

C# 实体框架/WCF连接顺序,c#,wcf,entity-framework,C#,Wcf,Entity Framework,在系统中出现一些奇怪的行为。事情是这样的: 我有一个main,它在打开读/写通道之前使用WCF设置服务器端点 我还有一个基于实体框架的数据库抽象层。当我实例化我的数据库类时,我连接到数据库 我的一个端点包含这个DB抽象类。在向WCF注册端点之后,我实例化了数据库对象 如果我按此顺序操作: 向WCF添加服务 连接到数据库 打开WCF端点进行读/写操作 我发现变速器有故障 如果我按此顺序操作: 打开WCF端点进行读/写操作 向WCF添加服务 连接到数据库 一切正常 不可否认,我完全不知道为什么会发生

在系统中出现一些奇怪的行为。事情是这样的:

我有一个main,它在打开读/写通道之前使用WCF设置服务器端点

我还有一个基于实体框架的数据库抽象层。当我实例化我的数据库类时,我连接到数据库

我的一个端点包含这个DB抽象类。在向WCF注册端点之后,我实例化了数据库对象

如果我按此顺序操作:
向WCF添加服务
连接到数据库
打开WCF端点进行读/写操作

我发现变速器有故障

如果我按此顺序操作:
打开WCF端点进行读/写操作
向WCF添加服务
连接到数据库

一切正常


不可否认,我完全不知道为什么会发生这种情况,任何想法都将不胜感激,如果您能告诉我您需要的更多信息,我将很乐意发布。谢谢

设法解决了这个问题,以防有人对此感到疑惑

我们有一种方法可以在WCF层启动时将已知类型添加到序列化系统中

WCF不希望序列化抽象或泛型类型,但or框架广泛使用它们。当我们在进行此类型收集之前连接DB时,WCF将在反序列化阶段对泛型类型进行检查

添加检查以确保类型在添加到集合之前不是抽象的或泛型的,修复了该问题