2008-12-04 22 views
10

Để tham khảo một thành viên của một lớp trong ý kiến ​​XML/tài liệu, bạn phải sử dụng thẻ sau:Làm thế nào để tham chiếu đến một thành viên indexer của một lớp trong C# bình luận

<see cref="member"/> 

Tốt hơn là giải thích here .

Làm cách nào để bạn tham chiếu đến chỉ mục chỉ mục?

Ý tôi là, một thành viên như thế này:

internal object this[ int index ] { 
    ... 
} 

Cảm ơn trước.

Trả lời

11
<see cref="P:System.Collections.ArrayList.Item(System.Int32)" /> 
+0

Bạn có thể xây dựng một chút không? Ý nghĩa của P ở phía trước của tất cả những thứ đó là gì? Bất động sản? – Auron

+2

P là dành cho tài sản, M cho phương pháp, T cho loại, chỉ cần nhìn vào "C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ en \ mscorlib.xml" cho ví dụ :) – leppie

+0

Con người, đó là một khá toàn diện thí dụ! ;) Cảm ơn. – Auron

1

Nói chung, để tìm hiểu, làm thế nào để tham khảo bất kỳ thành viên trong ý kiến ​​của bạn, tìm ra thành viên trong tập tin tài liệu XML của bạn để lắp ráp các. Nó được tạo trên mỗi bản dựng. Với ngoại lệ duy nhất của generics tham khảo thành viên có thể được lấy từ đây:

</member> 
<member name="P:My.Namespace.Class1.Item(System.String)"> 
    <summary> 
     retrieve a single item of the given name from this instance 
    </summary> 
    <param name="name">name of the item</param> 
    <returns>the item</returns> 
</member> 
<member name="M:My.Namespace.Class1.Function1(System.Int32[])"> 
    <summary> 
    ... 

Thật không may, định dạng định nghĩa chung dường như không tương thích giữa tệp tài liệu và thẻ cref. Trong khi trong file XML, Generics trông giống như rằng:

<member name="M:My.Namespace.Class1.Get``1(System.String)"> 
    <summary> 
    retrieve an named item of the given type 
    </summary> 
    <typeparam name="T">the type of the item to retrieve</typeparam> 
    ... 

Thẻ cref hy vọng chúng trong một trong các định dạng sau:

/// <seealso cref="M:My.Namespace.Class1.Get{T}(System.String)"/> 

/// <seealso cref="M:My.Namespace.Class1.Get&lt;T>(System.String)"/> 
1

Tôi đã có cùng một câu hỏi, nhưng với một chung Thuộc tính Dictionary.Item (TKey). Các answer by leppie

<see cref="P:System.Collections.ArrayList.Item(System.Int32)" />

additional link by ICR (tiếc là tôi không thể tìm thấy "mscorlib.xml")

MSDN: Processing the XML File (C# Programming Guide)

giúp tôi ra ngoài.

Nhưng the answer by user492238
(Tôi biết, tôi nên trực tiếp bình luận câu trả lời của anh ấy.) Vì tôi mới và đây là bài viết đầu tiên của tôi, hãy dễ dàng với tôi, vì tôi không được phép bình luận vì danh tiếng thấp của tôi.)

<seealso cref="M:My.Namespace.Class1.Get{T}(System.String)"/>
<seealso cref="M:My.Namespace.Class1.Get&lt;T>(System.String)"/>

dẫn duy nhất ở đồng bằng, văn bản màu đen, trong đó chỉ có giây cho thấy thẻ ký <> như được đưa ra "mã hóa cứng".

Tôi tìm thấy giải pháp trên trang MSDN để sử dụng backticks (`) cho generics và có một đầy đủ ("colory") tham chiếu đến lớp và tài sản trong phạm vi XMLdoc tôi:

<see cref="P:System.Collections.Generic.Dictionary`2.Item(`0)" /> 
Dictionary<TKey, TValue>.this[TKey] 
1
<see cref="ReadOnlyCollection{T}.this[int]" /> 

theo đề xuất here.

Các vấn đề liên quan