WCF初学者请教下问题,感谢大家帮忙!
 
情况:有class A 和 B[Serializable]
public class A
{
    IList<B> _bList;    [XmlIgnore]
    public IList<B> BList
    {
        get {return _bList;}
        set {_bList = value;}
    }
}[Serializable]
public class B
{
    A _aProperty;    public A AProperty
    {
        get {return _aProperty;}
        set {_aProperty= value;}
    }
}
此时,class A 和 B 是循环引用关系,并且WCF会使用默认的DataContractSerializer
 
但是,DataContractSerializer默认不支持循环引用的序列化
 
目前查到有2个方法可以解决:
 
1.在class A上使用[DataContract(IsReference=true)](DataContract这个Attribute不能与Serializable一起使用吧)
 
2.使用DataContractSerializer的preserveObjectReferences参数
 
我的问题是:
 
我的项目中,像A和B这样的class还有很多,并且不想删掉Serializable这个Attribute
 
这两种方式都需要在类(.cs文件)中处理,也就是说,需要一个class一个class的修改,很麻烦
 
有没有什么方式,可以在配置文件中实现的?
 
谢谢各位了!