如何在记录代码</string>中使用IEnumerable <string>

时间:2014-06-29 10:30:16

标签: c# visual-studio visual-studio-2012 documentation-generation sandcastle

我有这个方法,我试图生成文档。

    /// <summary>
    /// This method demonstrates taking a Func as argument and perform that action(Func) on a list of strings.</summary>
    /// <param name="listOfStrings"> ... </param>
    /// <param name="ActionToPerformOnEach"> ... </param>
    /// <returns>Returns an <see cref="IEnumerable{String}" /> which has elements that resulted due to the Func action </returns>
    public static IEnumerable<String> ActOnListWithFunc(List<string> listOfStrings, Func<string, string> ActionToPerformOnEach) {
        foreach (string s in listOfStrings) {
            string actedString = ActionToPerformOnEach(s);
            yield return actedString;
        }
    }

这会生成这样的文档(仅显示返回值部分)

Return Value
Type: IEnumerable<String>
Returns an IEnumerable<T> which has elements that resulted due to the Func action

在我描述方法的返回值的地方,我想使用 IEnumerable&lt; string&gt; 但是如果你看一下desscription它就会生成 IEnumerable&lt; T&gt; 类型:(上面第二行)虽然已正确选取 IEnumerable&lt; string&gt; 。只是返回值的描述行不正确。

我们如何在参数或返回值的描述中描述 IEnumerable&lt; string&gt; IEnumerable&lt; int&gt; 或任何其他特定类型的枚举,即&LT; PARAM&GT; &LT; / PARAM&GT;或者&lt; return&gt;正在记录的方法的&lt; / returns&gt; 标记。

2 个答案:

答案 0 :(得分:6)

您可以使用<see cref="IEnumerable{String}">IEnumerable&lt;string&gt;</see>显示相应的文字。但是,由于没有IEnumerable<string>

的具体文档,因此该链接仍为IEnumerable<T>

答案 1 :(得分:0)

我们只是写

/// <returns>Returns an <see cref="IEnumerable{T}" /> of type <see cref="string"/> which has elements that resulted due to the Func action.</returns>

这将创建对IEnumerable<out T>string的引用。

John Koemer提出的解决方案有一个缺点,即IntelliSense对IEnumerable%lt;string%gt;部分无能为力。

IntelliSense showing listOfStrings argument