我在 Visual Studio 2010 中使用DTE来检查 C# 类并自动生成代码。
当我遇到一个实现泛型接口的类时,我想将类型约束作为一个CodeType
对象来访问。
例子:
class ServiceProviderCollection : IList<IServiceProvider> {}
我有CodeClass
代表的对象ServiceProviderCollection
。我可以CodeInterface
使用IList<IServiceProvider>
. CodeClass.ImplementedInterfaces
但我不知道如何从那里到达CodeInterface
代表IServiceProvider
.
我可以通过解析 CodeInterface.FullName 并抓取 < 和 > 之间的字符串来找到类型约束的名称,但这还不够。
如果这很重要,我正在使用 C# 来实现这一点。