ONIX 2.1 dtd에 대한 XML 피드의 유효성을 검사하려고합니다. 생성 된 XML 파일을 XMLSpy에로드하고 DTD에 대해 유효성을 검사하면 피드가 유효 함을 알립니다.dotnet을 사용하여 Onix 2.1 dtd에 대해 XML 유효성 검사
C# 및 XmlReader를 사용하여 동일한 파일의 유효성을 검사하려고하면 타사 도구에서 이전에 유효성을 검사 했음에도 불구하고 자식 노드가 잘못되었다는 오류가 발생합니다. XmlReader를 사용하는 코드가 dtd를 올바르게 읽고 유효성을 검사하는지 확인하려면 어떻게해야합니까?
여기 내 코드의
...XmlReaderSettings settings = new XmlReaderSettings();
settings.ProhibitDtd = false;
settings.ValidationType = ValidationType.DTD;
settings.ValidationFlags = XmlSchemaValidationFlags.ReportValidationWarnings;
settings.ValidationEventHandler += new ValidationEventHandler(delegate(object sender, ValidationEventArgs args)
{
isXmlValid = false;
xmlValMsg.AppendLine(args.Message);
});