문제

나는 어셈블리를 사용하여 문서화하고 있습니다 XML 문서 주석, a chm 파일은 사용하여 생성됩니다 모래성.

내 어셈블리에는 다양한 인터페이스가 포함되어 있으며 각 인터페이스는 각각 하나의 클래스에 의해 구현됩니다 (내 시나리오에서는 WCF 서비스입니다).

인터페이스에 문서를 추가했는데 구현 클래스에 관련 메소드를 자동으로 문서화 할 수있는 방법이 있습니까?

도움이 되었습니까?

해결책

Sandcastle에서 이러한 자동 문서화에 대한 지원은없는 것 같습니다. 그만큼 Sandcastle 도움말 파일 빌더 사용자 정의 상속자 태그를 구현하지만.

SHFB 사이트에서 :

지원이 포함되어 있습니다u003Cinheritdoc /> 기본 유형/멤버에서 문서를 물려받을 수있는 태그. 이것은 독립형 도구를 통해 구현되므로 다른 타사 도구 및 빌드 스크립트에서도 사용할 수 있습니다. 이 도구는 Sandcastle과 함께 제공되는 빌드 구성 요소에있는 기능을 넘어서는 기능을 제공합니다.

두 번째 업데이트 : ~에 따르면 이 workitem, inheritdoc의 Sandcastle "Support"는 SHFB 도구를 통해 이루어집니다. 결론은 SHFB가 문제를 해결한다고 생각합니다.

다른 팁

더 나은 대답이 있습니다. fixml.

Ghostdoc atomineerutils와의 의견을 복제하는 의견은 확실히 작동하는 접근 방식이지만 상당한 단점이 있습니다.

  • 원래 주석이 변경되면 (개발 중에 자주 발생하는 경우) 클론은 그렇지 않습니다.
  • 당신은 엄청난 양의 복제물을 생산하고 있습니다. 소스 코드 분석 도구 (예 : 팀 시티의 중복 파인더)를 사용하는 경우 주로 의견을 찾을 수 있습니다.

언급했듯이, 거기에 있습니다 <inheritdoc> 태그를 입력하십시오 모래성, 그러나 fixml과 비교할 때 단점이 거의 없습니다.

  • Sandcastle은 컴파일 된 HTML 도움말 파일을 생성합니다. .xml 추출 된 XML 주석을 포함하는 파일. 그러나이 파일은 Visual Studio .NET의 .NET Reflector 및 클래스 브라우저 Intellisense를 포함한 많은 도구에서 사용됩니다. 따라서 Sandcastle 만 사용하면 상속 된 문서가 표시되지 않습니다.
  • Sandcastle의 구현은 덜 강력합니다. 예를 들어, 그렇지 않습니다<see ... copy="true" />.

보다 모래성 <inheritdoc> 설명 자세한 내용은.

FIXML에 대한 간단한 설명 : C# Visual Basic .NET에 의해 생성 된 XML 문서의 후 처리기입니다. MSBuild 작업으로 구현되므로 모든 프로젝트에 통합하기가 매우 쉽습니다. 이 언어로 XML 문서 작성과 관련된 성가신 사례는 거의 없습니다.

  • 기본 클래스 또는 인터페이스에서 문서를 물려받을 수있는 지원이 없습니다. 즉, 재정의 멤버에 대한 문서는 처음부터 작성해야하지만 일반적으로 적어도 일부를 상속하는 것이 매우 바람직합니다.
  • 일반적으로 사용되는 문서 템플릿의 삽입에 대한 지원이 없습니다, “이 유형은 싱글 톤입니다 - 사용 <see cref="Instance" /> 유일한 인스턴스를 얻는 속성. "또는"새 인스턴스를 초기화합니다. <CurrentType> 수업."

언급 된 문제를 해결하기 위해 다음과 같은 추가 XML 태그가 제공됩니다.

  • <inheritdoc />, <inherited /> 태그
  • <see cref="..." copy="..." /> 속성 <see/> 꼬리표.

여기에 있습니다 웹 페이지 그리고 페이지 다운로드.

다음과 같은 도구 고스트 돔 키보드 단축키를 사용할 때 구현 클래스에 문서를 생성 할 수 있습니다. 그것은 완전히 자동적이지는 않지만 너무 많은 복사 붙여 넣기를 방지 할 수 있습니다.

아마도 스크립트로 자동화 될 수 있습니다.

Atomineerutils는 귀하에게 의견을 자동 생성하고 과부하 및 기본적으로 기존 문서를 선택하여 필요한 정보를 복제 할 때 번거 로움을 저장합니다.

http://www.atomineer.com/atomineerutils.html

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top