【问题标题】:List a Solution's Projects/Assemblies列出解决方案的项目/程序集
【发布时间】:2010-12-15 10:42:17
【问题描述】:
我想列出解决方案中的程序集,但仅列出解决方案中的项目,而不仅仅是 AppDomain.CurrentDomain.GetAssemblies() 返回的已加载程序集列表;
是否有提供运行时解决方案信息的类?理想情况下,我正在寻找类似 Application.GetSolutionProjects();
项目是VS2008/C#/.Net 3.5
谢谢
【问题讨论】:
标签:
c#
assemblies
metadata
projects-and-solutions
【解决方案1】:
应用程序实际上与您的解决方案是分开的。您可以解析解决方案和项目 XML 以生成由您的解决方案创建的程序集列表。
我不确定您将如何在运行时执行此操作,因为解决方案和项目文件通常不可用。您可以在编译时预先创建一个列表,然后让一个方法读取它。或者您可以在编译时将您的程序集转储到特定的子目录中,然后在运行时检查该目录以列出您的程序集。
【解决方案2】:
解决方案文件仅适用于 VS,它不是 .net 框架的一部分,也不包含在项目中,即您可以拥有一个项目和多个包含该项目的解决方案,您想获取什么解决方案项目?但是,您可以解析特定的解决方案文件以获取解决方案中的所有项目