Visual Studio解决方案中的项目名称有时为空

在visual studio扩展中,我想获得所有项目及其名称:

var service = (DTE) Package.GetGlobalService(typeof (SDTE)); var projects = service.Solution.Projects; foreach (Project project in projects) //.... 

除了一个小问题外,这种方法工作得很好而且整洁:项目变量确实返回了确切的项目数。 但是如果项目的全名位于解决方案的文件夹中,则它的全名可能是EMPTY。 (我的意思是项目在解决方案的文件夹中统一时的解决方案结构)

如何正确地获得这些项目?

这是一个解决方案。 这个家伙是最低限度的指环王: http : //www.wwwlicious.com/2011/03/29/envdte-getting-all-projects-html/