2008-11-03 3 views
2

SOA 세계에서 웹 서비스의 계약 개발을 처음하고 있습니다.XSD에서 클래스 생성

XSD 파일을 편집 한 후 XSD 파일에서 .net 클래스를 자동으로 (다시) 생성하는 가장 좋은 방법은 무엇입니까?

답변

3

xsd.exe는 새로운 클래스를 생성합니다.

Visual Studio의 설치 방법에 따라 xsd.exe를 "등록 정보/빌드 이벤트/빌드 후 이벤트"에 추가하면 다시 빌드 할 때마다 강제로 다시 생성됩니다.

+0

xsd.exe의 URL은 다음과 같습니다 http://msdn.microsoft.com/en-us/library/x6c1kb0s(VS.71).aspx URL이 포함 된 유래에 버그가있어 ()는 []() 구문을 사용하여 올바르게 구문 분석하지 않습니다. – nzpcmad

+0

xsd.exe는 매우 약하며 복잡한 스키마를 잘 처리 할 수 ​​없습니다. 내가 지금까지 사용한 가장 좋은 것은 http://www.codeproject.com/Articles/8433/An-XSD-to-NET-language-code-class-generator-that-a – hardywang

2

.net 1.1 또는 2.0을 사용하는 경우 xsd.exe. 3.0 또는 3.5를 사용하는 경우 svcutil.exe. 지원되지 않는 코드를 사용하는 데 신경 쓰지 않는다면 LINQ-to-XSD (http://blogs.msdn.com/xmlteam/archive/2008/02/21/linq-to-xsd-alpha-0-2.aspx)가 좋습니다. 모든 도구를 사용하면 일부 스키마가 .NET 클래스로 자동 변환되지 않는다는 점에 유의하십시오. 이 경우에 클래스를 손으로 코딩하고 IXmlSerializable을 구현하십시오.

1

Thinktecture의 WSCF - Web Services Contract First 도구를 사용하여 XSD 스키마를 먼저 작성한 다음이 도구를 사용하여 서비스 인터페이스를 생성하는 웹 서비스 개발을 수행합니다. 우리는 지난 2 년 동안이 도구를 사용했고, 나는 그것을 강력히 추천합니다.

같은 사람도 원래 도구의 후속이며 계약 개발을 허용합니다 (XSD 먼저 읽음) WSCF.blue 프로젝트를 시작했습니다. WSCF.blue는 WCF (Windows Communication Foundation)를 지원하기위한 것입니다.

+0

내가 생성했다면 다음에해야할 일 클래스 또는 데이터 집합? 프로젝트에서 어떻게 사용할 수 있습니까? – pbies