1

如何从 Visual Studio 加载项访问当前打开的项目的类型(类)(能够在加载项中创建这些类的实例)?这可以通过反射实现吗?或者也许动态地包含项目的程序集作为参考?

最后我想要的是一个可以从项目中访问的所有类型的列表,同时考虑到项目本身中声明的引用程序集和类型。在没有实际查找 Type 实例的方法的情况下,可以使用类型名称列表 - 这样,如果项目尚未构建且其中的类型尚未实现,我不会遇到问题。

我使用 Visual Studio 2008,我喜欢的语言是 C#。

编辑:我想我可以解析每个文件并找出类声明,但我也想考虑引用程序集中的类型。可以通过搜索“使用”语句来寻找引用,但这会使动态导入的 dll 类型成为一个悬而未决的问题。因此,考虑到要考虑的不同情况的分支,我想知道是否没有更简单的方法。

4

2 回答 2

1

当然,只需从输出目录中获取程序集并加载它。我现在没有从事任何 EnvDTE 项目,所以我不能只是弹出并敲出一个样本,但这就是您能够枚举/实例化类的方式。

但是.... nobugz 暗示有什么味道.. 你想做什么?可能有一种“更好”的方法来做到这一点。

于 2010-02-13T22:54:35.550 回答
0

Visual Studio 代码模型使自动化客户端能够发现项目中的代码定义并修改这些代码元素。

欲了解更多信息,请访问:

http://msdn.microsoft.com/en-us/library/ms228763(VS.80).aspx

于 2010-04-29T08:24:26.810 回答