我正在开发一个WCF服务并使用实体框架(EF)将我的数据库建模为对象。
我还构建了自己的对象来扩展EF对象,以便提供自定义功能,而不是对EF模型进行任何更新的“人质”。
所以,问题是,想象两个具有相同父级的子级(即,父级具有相同的Id但在内存中不是同一个对象)。当我看到生成的SOAP消息时它没有使用IsReference属性,因为WCF无法意识到对象应该是相同的。
我试图重写Equals一个ReferenceEquals,但没有运气。
有什么建议吗?
祝你好运, jpsfs
示例:
[DataContract(Name = "Parent", IsReference = true)]
public sealed class Parent
{
[DataMember(Name = "Id")]
public int Id
{
get;
set;
}
}
[DataContract(Name = "Child")]
public sealed class Child
{
[DataMember(Name = "Id")]
public int Id
{
get;
set;
}
[DataMember(Name = "Parent")]
public Parent Parent{
get;
set;
}
}