.NET 프로젝트 (Sandcastle)의 네임 스페이스 문서?
-
03-07-2019 - |
문제
나는 사용을 시작했다 모래성 얼마 전에 프로젝트 중 하나에 대한 문서 웹 사이트를 생성합니다. 잘 작동하지만 프로젝트에서 클래스, 메소드, 속성 (...)에 대한 문서 만 항상 작성했으며 전체 프로젝트 및 프로젝트 부품/모듈/네임 스페이스에 대한 문서를 완전히 별도로 별도로 작성했습니다. 해당 문서를 함께 병합하고 생성 된 도우미 파일에 해당 문서를 추가 할 수 있지만이를 수행하는 방법을 알 수는 없습니다.
네임 스페이스 선언에 댓글을 추가하는 것만으로는 작동하지 않는 것 같습니다 (C#) :
/// <summary>
/// My short namespace description
/// </summary>
namespace MyNamespace { ... }
누구 든지이 작업을 수행하는 방법을 아는 사람이 있습니까? 나는 그것이 어떻게 든 가능하다는 것을 알고 있습니다.
해결책
Sandcastle은 또한 NDOC 스타일 네임 스페이스 문서를 지원하여 소스 파일에 문서를 고수 할 수 있습니다.
문서화하려는 네임 스페이스에서 Nomespacedoc라는 비 공개 클래스를 작성하면 해당 클래스의 XML Doc 댓글이 네임 스페이스에 사용됩니다.
문서에 클래스 자체가 표시되는 것을 방지하기 위해 [Compilergated] 속성으로 장식하십시오.
예시:
namespace Some.Test
{
/// <summary>
/// The <see cref="Some.Test"/> namespace contains classes for ....
/// </summary>
[System.Runtime.CompilerServices.CompilerGenerated]
class NamespaceDoc
{
}
}
Sandcastle의 작업 항목이 있습니다여기.
다른 팁
사용하는 경우 Sandcastle 도움말 파일 빌더 네임 스페이스 요약을 입력하는 대화 상자가 있습니다. (분명히 특정 클래스 정의를 지원하지만 나는 그것을 선호하지 않을 것입니다 ..)
기능 목록에서 :
도움말 파일에 표시 될 프로젝트 요약 및 네임 스페이스 요약 주석의 정의. 도움말 파일에서 포함하거나 제외 할 네임 스페이스를 쉽게 표시 할 수도 있습니다. 각 네임 스페이스 내에서 네임 스페이스 클래스를 통해 네임 스페이스 주석을 지정하기위한 지원도 포함되어 있습니다.
사용 Sandcastle 도움말 파일 빌더. XML 프로젝트 파일에 네임 스페이스 설명을 지정할 수 있습니다.
예시:
<namespaceSummaryItem name="System" isDocumented="True">
Generic interfaces and helper classes.
</namespaceSummaryItem>
참조 :
- 오픈 소스 프로젝트의 예모든 빌드마다 문서를 생성합니다 (모든 스크립트는 트렁크에 있습니다).
- 그게 SHFB의 문서가 웹에서 어떻게 보이는지 (모든 강제 빌드에 배치됩니다)
.
나는 그것이 오래된 게시물이라는 것을 알고 있지만 이것은 다른 사람에게 도움이 될 수 있습니다.
이 링크를 따릅니다, 프로젝트에 비공개 클래스를 추가 할 필요없이 네임 스페이스에 대한 설명을 설정할 수 있습니다.
네임 스페이스 요약을 편집하려면 SHFB의 프로젝트 속성 탭 내에서 요약 섹션을 확장하십시오. "네임 스페이스무 마maries"라는 설정이 표시되며, 처음에는 값을 보여주는 "(없음)". 설정을 클릭하여 선택하고 Ellipsis 기호 (...)가 표시되는 버튼이 나타납니다. 이 버튼을 클릭하여 네임 스페이스 요약 대화 상자를 표시하십시오.
당신은 그런 식으로 참조를 추가 할 수 없습니다 - namespacedoc.cs 인스턴스를 통해 수행하십시오.
즉
/// <summary>
/// Concrete implementation of see cref="IInterface" using see cref="Concrete"
/// </summary>
class NamespaceDoc
{
}
"외부 XML 주석 파일"에 대한 문서가 있습니다. 같은 스키마 표시 :
<doc>
<assembly/>
<members>
<member/>
</members>
</doc>
이것이 별도의 파일에 배치되면 확장자는 (XML/AML) 어떤 것이며 이것은 Visual Studio 프로젝트에서 사용할 수 있습니까?