0

次のような構文を使用してテーブルを文書化できることを知っています。

/// <summary>
/// Insert table description here.
/// </summary>
public class SomeTable
{
    public int someNumber { get; set; }
    public string someString { get; set; }
}

次のようにテーブルを使用すると、適切な要約が表示されます。IQueryable<SomeTable> query;ただし、LINQ でテーブルを使用する場合:

var query = from p in db.SomeTable
            select p;

テーブルのインテリセンスの説明は得られません。明らかに解決策はpublic DbSet<SomeTable> SomeTable { get; set; }、私の DbContext の行を同じ説明で文書化することですが、それは長期的にはあまり維持できないようです。すべてのテーブルで自分自身を繰り返さなくても、欲しいものを手に入れる方法はありますか?

4

1 に答える 1

0

XML ドキュメントは、IntelliSense にはあまり役に立ちません (コード補完のみについて話している場合、メソッド/プロパティをドキュメント化すると、その情報を含む追加のポップアップが表示されることはわかっています)。

しかし、順序は本当に重要です。たとえば、次のように言ったとします。

var invoices = from inv in db.Invoices
               join cust in db.Customers on inv.CustomerId equals cust.CustomerId
               where cust.CustomerId == myCustId
               select inv;

その後、全体で IntelliSense を取得します。ただし、結合の条件を逆にした場合 (cust.CustomerId が inv.CustomerId に等しい)、その条件の IntelliSense は取得されません。

編集: OP は主に IntelliSense の説明に関心があることに気付きました。基本的に、別のクラスのプロパティでクラスの説明を確認したいので、それを自動化する方法はありません。

プロパティとクラスは別々に説明する必要があります。プロパティがテーブルを返すだけではない場合はどうなるでしょうか?

于 2013-01-29T00:15:50.113 に答える