我已经得到了VS2010一个包,现在关注的我如何才能获得EnvDTE当前项目中定义的类?
EnvDTE=>Solution=>Projects=>CodeModel=>CodeElements
做递归以下和查找类
var q = elements.Cast<CodeElement>()
.Where(x => x is CodeClass || x is CodeNamespace)
.Where(x => x.Name.StartsWith("System") == false)
.Where(x=>x.Name.StartsWith("Infragistics")==false)
.Where(x=>x.Name.StartsWith("Microsoft")==false)
.Where(x => x.Name.StartsWith("ICSharpCode")==false);
它运行很慢,有没有办法来此查询/搜索限制只有当前项目中定义的类/类型?
据我所知FileCodeModel
是既没有用也不合适,因为这将需要打开每个项目项目。
这个只要注意,它本身并不限制对项目中的类 - 它抓住他们,如果他们在任何地方引用(在有一个很好的协议的BCL的产生)。我现在只是在看这个,所以我没有其他答案! – 2012-06-03 05:44:11