WCF“Dispose之后访问的DataContext”

时间:2010-04-09 08:34:39

标签: c# wcf linq-to-sql

我有一个应用程序,它有许多WCF服务,它们使用LINQ-To-SQL作为数据访问模型。我在“Dispose后访问的DataContext”异常中遇到了很多问题。我理解这个异常是什么,并且它正在发生,因为我没有“初始化”试图访问的数据。我读过很多文章,建议我在服务返回父对象之前在任何数组上调用ToList()。

我的问题是我得到了这个例外,我不知道它来自哪里,因此我不知道什么是未初始化的。

有人可以建议如何最好地确定根本原因吗?

(我使用过MS服务跟踪查看器,这似乎没有给我任何进一步的信息)

1 个答案:

答案 0 :(得分:1)

我发现问题的根本原因是linq-to-sql中有一个用DataContract属性修饰但需要将IsReference属性设置为true([DataContract(IsReference=true)])的类。该类的属性也不是DataMember,需要([DataMember(EmitDefaultValue=false)])。设置这两个属性解决了我的问题。

相关问题