2009-04-19 3 views
14

Java에서 JAXB를 사용하면 xml 스키마 파일에서 해당 스키마를 준수하는 XML을 deserialize 할 수있는 Java 클래스 집합을 쉽게 생성 할 수 있습니다.C#의 Jaxb와 동일합니다.

JAXB에 해당하는 C#이 있습니까? 나는 Linq가 XML 파일에서 클래스를 직렬화하고 비 직렬화 할 수 있다는 것을 알고있다. 하지만 어떻게 XML 스키마 파일에서 C# 클래스를 생성 한 다음이 클래스를 linq과 함께 사용할 수 있습니까?

답변

15

Visual Studio를 사용하는 경우 XML Schema Definition Tool입니다. 스키마 정의를 가져 와서 C# 클래스를 생성합니다. 또는 다른 방법으로 클래스의 스키마 정의를 생성 할 수 있습니다. 또한 여러 가지 XML 관련 변형이 있습니다.

+0

실제로 XSD는 C#, VB.NET, JScript 또는 C++로 클래스를 생성 할 수 있습니다./language 스위치를 참조하십시오. –

+0

미안하지만, 그렇게 할 수 없다는 의미는 아닙니다. 그의 질문은 C# 클래스에만 관심이있었습니다. 그러나 예,/언어 전환은 편리합니다. –

+3

Visual Studio가 필요하지 않습니다. XSD.EXE는 .NET SDK의 일부입니다. –

4

XsdObjectGen이라는 XSD 개체 코드 생성기라는 Microsoft의 도구가 있습니다. xsd.exe와 비슷하지만 더 좋습니다. 또한 무료로 .NET SDK에 포함되어 있지 않지만 별도의 다운로드 파일입니다. 데이터 집합을 사용하여에 XSDObjectGen vs Xsd.exe

1

봐 :

는 또한 SO 질문을 참조하십시오. "Java Beans"사용과는 조금 다른 개념입니다. 전체 XML 문서는 단일 클래스에있는 모든 테이블의 계층 적 집합으로 처리됩니다. 좋은 점은 OOP를위한 캡슐화 이론이 실제로 시행된다는 것입니다. 와우, 마이크로 소프트는 썬이 뽀뽀를 쳤다.

어쨌든. 더 흥미로운 것들을 만들고 싶다면 입력 된 DataSet을 볼 수도 있습니다. 나는 이것을 큰 프로젝트에 사용하여 큰 성공을 거뒀습니다.

관련 문제