「一般に公開されている型またはメンバーに対するXMLコメントがありません」という警告が表示されます。
これを解決するには?
5つのオプション:
#pragma warning disable 1591
を使用します(あとで#pragma warning restore 1591
も)一般に公開されている型およびメンバーへのXMLコメントの追加:)
///<Summary>
/// Gets the answer
///</Summary>
public int MyMethod()
{
return 42;
}
あなたはすべてのメンバーに対してこれらの<summary>
タイプのコメントを必要とします - これらはインテリセンスポップアップメニューにも現れます。
この警告を受け取る理由は、プロジェクトの設定でドキュメントxmlファイルを出力するようにプロジェクトを設定したためです。これは、クラスライブラリ(.dllアセンブリ)に役立ちます。つまり、.dllのユーザーは、ビジュアルスタジオでAPIのインテリセンスドキュメントをすぐに入手できます。
GhostDoc Visual Studioアドインのコピーを自分で入手することをお勧めします。文書化がはるかに簡単になります。
XMLコメントに対する警告を抑制します
(私の作品ではありませんが、私はそれが役に立つと思ったので、私は記事とリンクを含めました)
http://bernhardelbl.wordpress.com/2009/02/23/suppress-warnings-for-xml-comments/
ここでは、Visual Studioのビルド後にXMLコメントに対する警告を抑制する方法を説明します。
背景
Visual Studioプロジェクト設定の "XML文書ファイル"マークをチェックした場合は、すべてのXMLコメントを含むXMLファイルが作成されます。さらに、XMLコメントがないか間違っているため、デザイナが生成したファイルでも多くの警告が表示されます。時々警告は私たちのコードを改善し安定させるのを助けますが、何百ものXMLコメント警告を得ることは単なる苦痛です。警告
公開されている型またはメンバーのXMLコメントがありません……のXMLコメントに '…'のparamタグがありますが、その名前のパラメータはありませんパラメータ'…'のXMLコメント内に '…'に対応するparamタグがありません(他のパラメータにはあります)
Visual Studioですべての警告を抑制することができます。
Visual Studioプロジェクト/ [プロパティ]/[ビルド]タブを右クリックします。
次の警告番号を "Suppress warnings"に挿入してください。1591,1572,1571,1573,1587,1570
XMLコメントを挿入します。 ;-)
/// <summary>
/// Describe your member here.
/// </summary>
public string Something
{
get;
set;
}
一見するとこれは冗談のように見えるかもしれませんが、それは実際には役に立ちます。私にとっては、プライベートメソッドに対してもどのようなメソッドが実行されるのかを考えることは有益であることがわかりました(もちろん本当に些細なことを除けば)。
これは、XMLドキュメントファイルがプロジェクトのプロパティで指定されており、メソッド/クラスが公開されており、ドキュメントが不足しているためです。
次のいずれかを実行できます。
プロジェクトを右クリック - >プロパティ - > 'ビルド'タブ - > XML Documentation Fileのチェックを外してください。
XML文書の要約は次のようになります。
/// <summary>
/// Description of the class/method/variable
/// </summary>
..declaration goes here..
私はここにリストされている答えに何かを加えたいと思いました:
Isak氏が指摘したように、XMLドキュメントはVisual Studio内のすべてのコンシューマにインテリセンスを提供するため、クラスライブラリに役立ちます。したがって、簡単で正しい解決策は、トップレベルプロジェクト(UIなど)のドキュメントを単純に無効にすることです。これは、独自のプロジェクトの外部では実装されません。
加えて、私は警告が一般に見えるメンバーにのみ現れることを指摘したいと思いました。したがって、必要なものだけを公開するようにクラスライブラリを設定すれば、private
およびinternal
のメンバをドキュメント化しなくても取得できます。
これは本当に古いスレッドですが、Googleでの最初の応答なので、この情報を追加したいと思いました。
この現象は、[プロジェクトのプロパティ] - > [ビルド]で警告レベルが4に設定されている場合にのみ発生します。あなたが本当にそれほど多くの情報を必要としない限り、あなたはそれを3に設定することができ、あなたはこれらの警告を取り除くでしょう。もちろん、警告レベルを変更することは単なるコメント以上のものに影響を与えるので、足りないものがわからない場合はドキュメントを参照してください。
https://msdn.Microsoft.com/ja-jp/library/thxezb7y.aspx
あなたのソリューションでは、XMLドキュメントファイルを生成するオプションをチェックすると、XMLDocを持っているかどうかあなたのパブリックメンバーをチェックし始めます。あなたが本当にあなたのDLLを解放したくない、そしてあなたがそれからドキュメンテーションを必要としないなら、あなたの解決策に行き、セクションを構築し、それをオフにしてください。プロパティとフィールドは、プリコンパイラ命令#pragma warning disable 1591
でそれらを上回るだけで、警告を元に戻すこともできます。#pragma warning restore 1591
プラグマの使用法:場所の前のコード内のどこかで...に対するコンパイラの警告が表示される場合(ファイルの場合はヘッダーに配置し、再度有効にする必要はありません。メソッド、または...ラップする必要もなく、呼び出して気軽に復元することができます(ファイルの先頭から開始してメソッド内で終了)。このコードを書く:
#pragma warning disable 1591
とそれを復元する必要がある場合は、#pragma warning restore 1591
を使用してください
ここに例があります:
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;
using RealEstate.Entity.Models.Base;
namespace RealEstate.Models.Base
{
public class CityVM
{
#pragma warning disable 1591
[Required]
public string Id { get; set; }
[Required]
public string Name { get; set; }
public List<LanguageBasedName> LanguageBasedNames { get; set; }
[Required]
public string CountryId { get; set; }
#pragma warning restore 1591
/// <summary>
/// Some countries do not have neither a State, nor a Province
/// </summary>
public string StateOrProvinceId { get; set; }
}
}
注そのプラグマディレクティブは行頭から始まります
Jon Skeetの答えは、VisualStudioを使用して構築しているときに非常に役立ちます。しかし、コマンドラインを使ってslnをビルドしている場合(私の場合はAntを介して)、msbuildはsln抑制要求を無視します。
これをmsbuildのコマンドラインに追加することで問題は解決しました。
/p:NoWarn=1591
#pragma warning disable 1591
#pragma warning disable 1591
#pragma warning disable 1572
#pragma warning disable 1571
#pragma warning disable 1573
#pragma warning disable 1587
#pragma warning disable 1570
警告レベルを2に設定すると、このメッセージが表示されなくなります。それがまた有用な警告を抑制するのでそれが最善の解決策であるかどうか知らないでください。
警告が表示されているメンバーに対して///コメントを追加する必要があります。
下記のコードを参照
public EventLogger()
{
LogFile = string.Format("{0}{1}", LogFilePath, FileName);
}
公開されている型またはメンバー '.EventLogger()'に対して、XMLコメントがありませんという警告が表示されます。
メンバーへのコメントと警告が消えました。
///<Summary>
/// To write a log <Anycomment as per your code>
///</Summary>
public EventLogger()
{
LogFile = string.Format("{0}{1}", LogFilePath, FileName);
}
ファイル> 編集> プロジェクトの表示(クリック)
ドロップダウンボウの下部(開く/現在の作業> プロパティをクリック)、「出力」の下の「ビルド」でプロジェクトのプロパティページを開きます。 "チェックを外す" XMLドキュメントチェックボックス。
再構築し、警告はしません。