草庐IT

ITypeSymbol

全部标签

c# - 从 ITypeSymbol 获取 TypeSyntax

我正在使用Roslyn-CTP进行一些试验。目前我正在尝试将var替换为具体类型。vari=1;应该变成:inti=1;找出推断的类型很容易。但是由于这部分发生在语义模型中,我得到了一个ITypeSymbol。替换发生在语法模型中,因此我需要一个TypeSyntax。由于我不想要一个臃肿的名称(global::System.Int32),转换是上下文相关的(using、嵌套类型等)。作为Roslyn的一部分的VisualStudio版本已经在其“简化类型名称”quickfix中具有此功能,但查看示例我找不到进行此转换的简单方法。基于我现在使用的KevinPilch-Bisson的回答: