Compilation.GetUsedAssemblyReferences(CancellationToken) 方法

定义

此编译认为使用的唯一元数据程序集引用。 例如,如果引用程序集中声明的类型在此编译的源代码中引用,则认为该引用被使用。 等。返回的集是 API 返回的 References 引用的子集。 如果编译包含错误,则结果为未定义。

导入命名空间对此 API 结果的影响取决于是否为编译禁用了未使用的导入的报告。 如果 DocumentationMode 设置为 None,则禁用未使用的导入的报告。

禁用未使用的导入报告时,包含属于导入命名空间的任何类型的引用程序集都会包含在结果中。 即认为已使用。

启用未使用的导入报告后,导入的命名空间不会对此 API 的结果产生影响。 因此,删除结果中没有的程序集引用可能会导致错误“CS0246:找不到类型或命名空间名称, (缺少 using 指令或程序集引用?) ”在未使用的命名空间导入。 但是,编译器会将该导入报告为调用此 API 的编译未使用。 为了避免错误,建议同时删除未使用的程序集引用和未使用的导入。

public abstract System.Collections.Immutable.ImmutableArray<Microsoft.CodeAnalysis.MetadataReference> GetUsedAssemblyReferences (System.Threading.CancellationToken cancellationToken = default);
abstract member GetUsedAssemblyReferences : System.Threading.CancellationToken -> System.Collections.Immutable.ImmutableArray<Microsoft.CodeAnalysis.MetadataReference>
Public MustOverride Function GetUsedAssemblyReferences (Optional cancellationToken As CancellationToken = Nothing) As ImmutableArray(Of MetadataReference)

参数

cancellationToken
CancellationToken

返回

适用于