IXmlSerializable을 사용하여 보내는 XML에 특정 유형의 요소를 작성하고 있습니다. 스키마를 구현했으며 항목을 쓰고 있습니다. 다음 코드는 예제입니다.IXmlSerializable에서 참조 찾기
public void IXmlSerializable.WriteXml(XmlWriter writer) {
// Write Out Class.
foreach (var item in myItems) {
DataContractSerializer ds = new DataContractSerializer(typeof(MyType));
ds.WriteObject(writer, item);
}
}
내가 가진 문제는합니다 MyType 사용 참조 항목이 이미 참조 할 필요가있는 XML로 작성되었습니다 그래서
[DataContract(IsReference = true)]
public class MyType { ...
로 선언한다는 것입니다.
이미 XML에 참조가 작성되었는지 어떻게 알 수 있습니까? 나는 내가 명시 적으로 통제 할 수없는 참조를 무시해야한다고 생각합니다. 그렇게하면 내 자신의 참조 ID를 만들고 자신의 인스턴스를 참조합니다.
중복되지 않아야하는 참조를 복제하므로 이는 분명히 해킹 된 타협입니다.
이미 직렬화 된 항목의 ID를 찾을 수 있는지 이미 확인 된 내용을 확인할 수있는 방법이 있습니까?
감사합니다.
크레이그.