C #의 인터페이스에서 XML 주석 상속
인터페이스 xml 주석을 구현에 연결하는 방법을 아는 사람이 있는지 궁금합니다. 문제는 기본 주석이 내 인터페이스에서 먼저 나오기를 원한다는 것입니다. 예:
interface myinterface {
/// <summary>
/// Does something.
/// </summary>
void method1(string foo);
}
구현은 다음과 같습니다.
public class myclass : myinterface {
public void method1(string foo) {
//do something...
}
}
이제 개체를 인스턴스화 한 후 마우스로 메서드 위로 마우스를 가져 가면 :
myclass foo = new myclass();
foo.method1("do something");
마우스 오버 팝업에 댓글을 표시하려면 어떻게해야합니까? 인터페이스 주석을 구현에 연결할 수있는 방법이 있습니까? Java에 방법이 있다는 것을 알고 있지만 C #에 대한 솔루션을 찾을 수 없습니다.
감사
XML 주석 연결은 IMHO가 불가능하지만 GhostDoc 과 같은 도구를 사용 하여 인터페이스 / Baseclass에서 구현 / 파생 클래스로 XML 주석을 복사 할 수 있습니다 .
XMLDoc은 <include />
Visual Studio 2003 이후로 사용 된 다른 파일의 주석을 포함하기위한 태그 를 정의합니다 . 가장 큰주의 사항은 참조 된 파일이 다른 소스 파일이 아닌 XMLDoc 문서 만 포함하는 파일이어야한다는 것입니다.
자세한 내용 은 MSDN 페이지 를 참조하십시오.
GhostDoc 을 사용 하면 인터페이스에서 구현 코드로 문서를 "전송"하는 데 많은 도움이됩니다.
http://blog.x-tensive.com/2008/02/fixml.html
원래 문서 시스템이 부족한 특정 추가 옵션이있는 포스트 프로세서입니다.
웹 사이트에서 :
간단한 요약:
FiXml은 C # \ Visual Basic.Net에서 생성 한 XML 문서의 포스트 프로세서입니다. 다음 언어로 XML 문서를 작성하는 것과 관련된 가장 성가신 경우를 해결합니다.-기본 클래스 또는 인터페이스에서 문서 상속을 지원하지 않습니다. 즉, 재정의 된 멤버에 대한 문서는 처음부터 작성해야하지만 일반적으로 적어도 일부를 상속하는 것이 바람직합니다. - "이 유형은 싱글 톤입니다. 해당 속성을 사용하여 유일한 인스턴스를 가져옵니다."또는 "새 클래스 인스턴스를 초기화합니다."와 같이 일반적으로 사용되는 문서 템플릿의 삽입을 지원하지 않습니다.
<inheritdoc /> 태그에 대한 지원을 추가하여 XML 문서 파일을 후 처리하는 명령 줄 도구를 만들었습니다.
소스 코드의 Intellisense에는 도움이되지 않지만 수정 된 XML 문서 파일을 NuGet 패키지에 포함 할 수 있으므로 참조 된 NuGet 패키지의 Intellisense와 함께 작동합니다.
자세한 내용은 www.inheritdoc.io 를 참조하십시오 (무료 버전 사용 가능).
<inheritdoc/>
곧 네이티브 지원을받을 것 같습니다 .
참조 https://github.com/dotnet/csharplang/issues/313를
참고 URL : https://stackoverflow.com/questions/3773037/inheriting-xml-comments-from-interfaces-in-c-sharp
'development' 카테고리의 다른 글
여러 github 프로젝트에 동일한 배포 키 사용 (0) | 2020.10.22 |
---|---|
Microsoft.Bcl.Build NuGet 패키지의 기능은 무엇입니까? (0) | 2020.10.22 |
YAML 배열을 병합하는 방법은 무엇입니까? (0) | 2020.10.22 |
봄 : 경로와 관련하여 / ** 및 / *의 차이 (0) | 2020.10.22 |
AngularJS-서버 측 렌더링 (0) | 2020.10.22 |