1
DataContractSerializer를 사용하여 캡처 된 WCF 메시지 로그 (svclog)에서 메시지를 deserialize하려고합니다.z : Id = ""(WCF 메시지 로그). deserializing 할 때 DataContractSerializer 예외가 throw됩니다.
일부 개체는 시도가 dataContractSerializer.ReadObject()를
던져 예외는 호출하는 예외를 발생 : ". 잘못된 아이디 ''널 (null)이거나 비워 둘 수 없습니다"
추가 조사에 내가 발견 svclog에 문제가있는 객체.
<personHeader xmlns:d4p1="http://schemas.datacontract.org/2004/07/Contosso.BusinessObjects"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance" z:Id="" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/">
<EntityKey xmlns:d5p1="http://schemas.datacontract.org/2004/07/System.Data" i:nil="true"
xmlns="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses"></EntityKey>
<UId xmlns="http://schemas.datacontract.org/2004/07/Contosso.BusinessObjects">F62C446B-C74E-4272-8338-7AF3D2957AC6</UId>
<d4p1:CustomerType>ABC</d4p1:CustomerType>
<d4p1:Screen>ConfigurePeople</d4p1:Screen>
<d4p1:ShowAllDisplayToPublic>true</d4p1:ShowAllDisplayToPublic>i1</personHeader>
무엇 실제 문제가 될 수 있으며 내가 주위 어떻게 작동합니까?
는 응답 주셔서 감사합니다. 해결 방법 1. 즉시 작동하지 않았지만, 닫는 "personHeader"태그 바로 전에 내부 텍스트 "i1"을 제거한 후에 작동했습니다. "i1"을 z : Id 속성으로 수동으로 이동 시켰으며 이제는이를 비 직렬화합니다. – Chetan