XmlReader
을 사용하여 제공된 스키마에 따라 XML 파일의 유효성을 검사합니다. 이를 위해 XmlReaderSettings.Schemas를 사용할 때 성능이 저하되고 사용할 여러 스키마를 지정하는 경우
XmlReaderSettings
의 인스턴스를 생성하고
ValidationType.Schema
로
ValidationType
의 설정과는 XxmlSchemaSet로
Schemas
속성입니다입니다. SR이 실제로 레거시 코드 인
StreamReader
이며, 아직도 내가 해결해야 할 많은 문제가
XmlReaderSettings rSettings = new XmlReaderSettings();
XmlSchemaSet schemaSet = new XmlSchemaSet();
schemaSet.Add(null, xsdPath1);
schemaSet.Add(null, xsdPath2);
schemaSet.Add(null, xsdPath3);
rSettings.Schemas.Add(schemaSet);
rSettings.ValidationType = ValidationType.Schema;
XmlReader validatingReader = XmlReader.Create(sr, rSettings);
같은 초안 코드입니다. 나는
schemaSet.Add(null, xsdPath2)
가 고치고보기 흉하게 보인다는 것을 알고 있습니다.
내가 원하는 것은 3 개의 xsd 파일을 제공했기 때문에 예상되는 성능에 어떤 영향이 있습니까? xsd는 우선 순위의 내림차순으로 제공됩니다. 이 모든 XML 스키마는 버전이 지정되었으므로 폴백 메커니즘을 갖기 위해 이들 모두를 추가했습니다.
내가 생각하는 바는 JIT 컴파일러가 컴파일러에서만 xsd1이 XML 파일을 구문 분석하려고 시도하고 다음으로 이동하지 못하는 경우입니다. 나는 세 xsd 모두를 기억하기를 원하지 않는다.
이것은 혼란 스럽습니다. 여러 스키마 파일을 지정하는 경우 어떤 성능이 저하 될 수 있습니까?
레거시 코드베이스가 향상 될 것으로 예상되므로 성능이 항상 최상위에 있습니다.