SyntaxValueProvider.ForAttributeWithMetadataName<T> 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
如果該節點具有與所提供 fullyQualifiedMetadataName
相同完整中繼資料系結至 INamedTypeSymbol 的 屬性,則建立 可 IncrementalValuesProvider<TValues> 針對所有 SyntaxNode 節點提供轉換的 。 fullyQualifiedMetadataName
應該是屬性的完整中繼資料名稱,包括 Attribute
尾碼。 "System.CLSCompliantAttribute"
CLSCompliantAttribute 例如。
public Microsoft.CodeAnalysis.IncrementalValuesProvider<T> ForAttributeWithMetadataName<T> (string fullyQualifiedMetadataName, Func<Microsoft.CodeAnalysis.SyntaxNode,System.Threading.CancellationToken,bool> predicate, Func<Microsoft.CodeAnalysis.GeneratorAttributeSyntaxContext,System.Threading.CancellationToken,T> transform);
member this.ForAttributeWithMetadataName : string * Func<Microsoft.CodeAnalysis.SyntaxNode, System.Threading.CancellationToken, bool> * Func<Microsoft.CodeAnalysis.GeneratorAttributeSyntaxContext, System.Threading.CancellationToken, 'T> -> Microsoft.CodeAnalysis.IncrementalValuesProvider<'T>
Public Function ForAttributeWithMetadataName(Of T) (fullyQualifiedMetadataName As String, predicate As Func(Of SyntaxNode, CancellationToken, Boolean), transform As Func(Of GeneratorAttributeSyntaxContext, CancellationToken, T)) As IncrementalValuesProvider(Of T)
類型參數
- T
參數
- fullyQualifiedMetadataName
- String
- predicate
- Func<SyntaxNode,CancellationToken,Boolean>
函式,決定是否應該轉換指定的 SyntaxNode 屬性目標 (TargetNode) 。 未傳遞此述詞的節點完全不會查看其屬性。
- transform
- Func<GeneratorAttributeSyntaxContext,CancellationToken,T>
執行轉換的函式。 這只會傳回 true
predicate
的節點,且具有與 具有相同完整中繼資料名稱 fullyQualifiedMetadataName
的相符 AttributeDataAttributeClass 專案。