我正在尝试使用Roslyn获取迭代的Type。我可以使用
将对象定义为String()klass
在Visual Studio调试器中我可以查看expressionType.ElementType并找出它是一个String。但是当我尝试在代码中访问ElementType时,我得到一个错误,说ElementType不是ITypeSymbol的成员。
答案 0 :(得分:1)
如果您知道expressionType
将成为数组,则可以将其强制转换为IArrayTypeSymbol
。之后,您将能够访问其ElementType
:
Dim expressionType = DirectCast(elementTypeInfo.Type, IArrayTypeSymbol)
Dim elementType As ITypeSymbol = expressionType.ElementType