gpt4 book ai didi

c# - 在 C# XML 文档中引用泛型类型的泛型类型?

转载 作者:IT王子 更新时间:2023-10-29 03:56:26 28 4
gpt4 key购买 nike

为谓词助手类编写一些 XML 文档。但我不知道我可以引用 Expression<Func<T, bool>>没有语法错误。有可能吗?我试过这个:

<see cref="Expression{Func{T, bool}}"/>

但我在 {T, bool}} 下看到一条红色波浪线.这虽然有效:

<see cref="Expression{TDelegate}"/>

有人知道吗?


更新:

给出的答案(我接受了)似乎有效。但是现在我开始收到很多关于无法解决的问题的警告。我有一门课叫 ExpressionBuilder<T>适用于 Expression<Func<T, bool>>很多。所以我当然想在我的 XML 注释中引用它。

我已经尝试了我所知道的两个版本:

<see cref="Expression&lt;Func&lt;T, Boolean&gt;&gt;"/>
<see cref="Expression{Func{T, Boolean}}"/>

但两者都不起作用。 (在最后一个上,ReSharper 在 {T,Boolean}} 下放置了一条蓝色波浪线,我在使用它的任何地方都会收到两个正在编译的警告,上面写着:

  1. XML comment on 'blah blah' has cref attribute 'Expression>' that could not be resolved
  2. Type parameter declaration must be an identifier not a type. See also error CS0081.

在我尝试引用的地方有同样的问题 Range<Nullable<DateTime>> ( Range<DateTime?> 也不起作用。使用 { } 和 &lt; &gt; )

难道我不应该引用这些类型的泛型吗?

最佳答案

似乎没有办法在 XML 文档中引用泛型的泛型,因为实际上,没有办法引用任何特定类型的泛型。

Lasse V Karlsen 的 answer让它为我点击:

如果你写<see cref="IEnumerable{Int32}" /> ,编译器只使用“Int32”作为类型参数名称,而不是类型参数。写作 <see cref="IEnumerable{HelloWorld}" />也会工作。这是有道理的,因为 MSDN 中没有您的文档可以链接到的“IEnumerable of int”的特定页面。

要正确记录您的类(class),我认为您必须编写如下内容:

<summary>
Returns an <see cref="IEnumerable{T}" /> of <see cref="KeyValuePair{T,U}" />
of <see cref="String" />, <see cref="Int32" />.
</summary>

我希望你喜欢文字。

关于c# - 在 C# XML 文档中引用泛型类型的泛型类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/684982/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com