我怎样才能从解决方案中获得项目?

时间:2014-04-02 06:14:43

标签: c# visual-studio-2012 envdte

我使用以下内容获得项目列表:

var solution = (IVsSolution)Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(IVsSolution));

有关详细信息,请参阅link

但它给了我解决方案中的每个项目,如目录,项目等。 我只需要项目。

如何才能从解决方案中获得项目?

2 个答案:

答案 0 :(得分:5)

我试过并得到了预期的结果。 可能还有其他更好的解决方案,但这实际上对我有用。

var projects = CommonMethods.GetProjects(solution).Where(item => item.FullName != string.Empty).ToList();

答案 1 :(得分:0)

我刚刚开始编程,所以可能是我的解决方式真的不是最好的,但我很快就遇到了同样的问题。

为了解决这个问题,我在列表中解析了解决方案的所有项目,之后我只检查了项目的相对路径是否具有后缀“.csproj”或我需要的任何其他类型的项目,并将它们写入新的列表也许这可以帮到你?