2011-03-21 6 views
6

SandCastle을 사용하여 WCF 서비스에 대한 외부 문서를 생성하려고합니다. SandCastle에 WCF 속성 (예 : ServiceContract)을 사용하여 어셈블리에있는 이름 대신 함수 및 엔터티의 이름을 지정하도록하려면 어떻게해야합니까?SandCastle을 사용하여 WCF 문서 생성

답변

1

다음은 질문에 대한 직접적인 답변이 아니지만 어쨌든 도움이 될 것입니다.

"외부 서비스 설명서"를 만들고 싶다면 외부 문서는 .NET 개발자를위한 것이 아니므로 구현 세부 사항을 (필연적으로) 볼 수 없게 할 수도 있습니다. 따라서 일반적인 API 스타일 문서는 어쨌든 적합하지 않을 수 있습니다.

해당 API 스타일 설명서 다음으로 Sandcastle은 "개념 문서"를 지원합니다. 어떤 XML 방언에서 기본적으로 "자유 텍스트"입니다. 나중에 다시 볼게.

보통 서비스 인터페이스 용으로 ?WSDL을 추가하거나 서비스 어셈블리에서 SVCUTIL.EXE을 사용하여 자동 빌드 중에 더 적합한 WSDL 파일을 먼저 생성해야합니다.

그런 다음 어려운 부분이 있습니다. WSDL을 MAML 문서 (XML 스타일 시트가 떠오른다)로 변환하는 무언가를 만들어야합니다. MAML (Microsoft Assistance Markup Language)은 실제로 Sandcastle에서 사용하는 핵심 형식을 말합니다.

나는 최선의 방법은 Sandcastle Helpfile Builder을 사용하여 CHM, HTML 페이지 또는 무엇이든간에이 파일을 만드는 프로젝트를 만드는 것입니다.

기본적으로 MAML 문서가 있으면 "표준"Sandcastle 도구 체인으로 돌아갑니다.

나는 꽤 많은 작업처럼 들리 겠지만, 아마도 그렇습니다. 나는 SMO를 사용하여 SQL Server 데이터베이스를 쿼리하여 참조 문서를 생성하기 위해 테이블, 프로 시저 등을위한 MAML 문서를 생성 할 수있는 과거와 비슷한 것을 수행했습니다. 실제로, 그것은 아주 능숙하게 잘되었고, 결국 노력은 그렇게 나쁘지 않았습니다.

어쨌든, 난 그 질문이 실제로 내가 DLL에서 문서를 생성하는 일부 '기성품'소프트웨어 나 자신을 작성 결국

+4

:-)에 "기성품"솔루션이 존재하는 경우에 응시하겠습니다 코드의 XMLDoc 해설. 나는 내가 GitHub 수 있는지 여부를 내 고용주에게 문의합니다. –

+2

코드 생성을위한 코드를 게시 할 권한이 있습니까? –