gpt4 book ai didi

c# - 在 Roslyn 中获取表达式结果的类型

转载 作者:太空狗 更新时间:2023-10-29 22:26:42 26 4
gpt4 key购买 nike

如果我有一个产生结果的表达式,比如 new ClassA() 或“somestring”或其他任何东西,并且我有一个相应的 ExpressionSyntax 对象,我如何获得与表达式结果对应的 INamedTypeSymbol 对象?

很多教程都提到了 GetTypeInfo 方法,但我在从 NuGet 获得的最新 Roslyn 中找不到它。有什么东西可以代替它吗?

更新:我以某种方式获得了 Roslyn 的 1.0 版本。更新到1.2后,找到了GetTypeInfo方法。

最佳答案

您需要构建语义模型,如下所示:

var semanticModel = document.GetSemanticModel(cancellationToken);
var typeInfo = semanticModel.GetTypeInfo(expression, cancellationToken);

关于c# - 在 Roslyn 中获取表达式结果的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19514344/

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