도트 넷에있는 XmlSchema
클래스는 어디에 있습니까?하지만 파일을로드 할 수 없습니다. xsd 파일을로드하고 요소 사이를 이동하는 깨끗한 솔루션이 있습니까?.xsd 파일을로드하여 요소 간 관계 (중첩)를 추적하려면 어떻게해야합니까?
1
A
답변
0
당신은, XmlSchemaSet
을 사용 예컨대을 : 필요
XmlSchemaSet schemaSet = new XmlSchemaSet();
schemaSet.Add(targetNamespace, schemaUri);
schemaSet.Compile();
foreach(XmlSchemaElement element in schemaSet.GlobalElements.Values)
{
// do stuff...
}
편집 : 명확 없었던 죄송합니다.
주석에 // do stuff...
이 표시되어있는 경우 XmlSchemaElement.SchemaType
에서 사용 가능한 각 요소의 상속 된 유형과 XmlSchemaElement.ElementSchemaType
아래에서 사용할 수있는 요소의 인라인 유형을 트래버스해야합니다.
MSDN에는 사용자가 수행 한 모든 정보가 포함되어 있지만 다소 미로와 같은 작업을 수행하고 시행 착오를 거쳐야합니다.
내 의견에 따라 경찰 내 오픈 소스 사이드 프로젝트 중 하나에서 다음 클래스는 여기에 사용 될 수 있습니다 http://www.altova.com/xmlspy.html :이 도구를 체크 아웃하는 것이 좋습니다
http://bitbucket.org/philbooth/schemabrute/src/tip/LibSchemaBrute/Navigator.cs
-1
. 모든 XSD 파일에서 데이터 모델을 만들 수 있습니다. 나는 많은 XML 프로젝트에서 이것을 사용했다.
관련 문제
- 1. 이 버그를 추적하려면 어떻게해야합니까?
- 2. XSD 관계/속성 질문
- 3. XSD 부모 자녀 관계
- 4. 도메인 간 관계
- 5. XML 트리 단순화 - 요소 간 관계 가져 오기
- 6. 재정과 같습니다 XSD 요소
- 7. ASP.NET의 폼에 XSD 요소
- 8. Python에서 오브젝트 간 관계 유지
- 9. UI 스레드에서 호출/스택을 추적하려면 어떻게해야합니까?
- 10. git을 사용하여 SRPM 사용자 정의를 추적하려면 어떻게해야합니까?
- 11. XSD 요소 이름을 영어로 번역하십시오.
- 12. xsd 동일한 요소, 다른 유형?
- 13. XSD 요소 및 열거 형
- 14. html로 된 요소 간 간격
- 15. 클래스의 집계/합성 멤버 간 관계 관리
- 16. 병합 된 모델에서 NSManagedObjectModel의 모델 간 관계?
- 17. Sql Server 2008 데이터베이스 간 연결 (관계)
- 18. 부모 컨트롤을 추적하려면
- 19. 매일보기에서 변경 사항을 추적하려면
- 20. XSD : 임의의 이름을 가진 요소 정의
- 21. 속성 및 최대 길이 제한이있는 XSD 요소
- 22. 다른 요소 값에 대한 XSD 제한
- 23. 는 XSD 요소 또는 OtherElement 또는 텍스트
- 24. nillable 및 minOccurs XSD 요소 속성
- 25. jQuery에서 두 요소 간 모든 요소 가져 오기
- 26. Google 애널리틱스 - 새로운 비동기 코드를 사용하여 페이지 이름을 추적하려면 어떻게해야합니까?
- 27. 일반적인 코드를 공유하는 힘내에서 여러 프로젝트를 추적하려면 어떻게해야합니까?
- 28. XSD CDATA
- 29. 레일 : html.haml 파일을로드하여 뷰에서 렌더링 하시겠습니까?
- 30. WPF : JPG 파일을로드하여 MS SQL DB에 저장
좋아, 나는 전역 요소를 모두 가지고 있지만이 전역 요소의 하위 요소를 어떻게 얻을 수 있습니까? 모든 것을 시도했지만 XmlSchemaElement에서 자식 요소에 대한 참조가없는 것 같습니다. – yukas
좋아요,이 주석 중 하나에서 완전히 대답하는 것은 너무 복잡하지만, 본질적으로'XmlSchemaElement'의'SchemaType'과'ElementSchemaType' 멤버를 분석해야합니다. MSDN에는 모든 세부 사항이 포함되어 있지만 명확하게 이해하려면 약간의 조사가 필요합니다. 다른 질문을 게시하면 더 많은 도움을 줄 수 있습니다. 그렇지 않으면이 작은 것들을 수행하는 작은 프로젝트 중 하나를 살펴볼 수 있습니다. 살펴 봐야 할 수업은 LibSchemaBrute :: Navigator ~ http://bitbucket.org/philbooth/schemabrute/src/tip/LibSchemaBrute/Navigator.cs –
입니다. 큰 감사드립니다. 코드를 다시 사용하도록하겠습니다. – yukas