我想创建自己的自动“解析”功能。在VS中,当您右键单击并选择“Resolve”时,它会为您提供选项,在选择一个选项时,它会向该文件添加必要的“using ...”语句。
我想更进一步:
现在,为了降低复杂性:
我知道有一些情况甚至.NET类重叠(例如System.Threading和System.Windows.Forms中的Timer),但它们是例外。
所以,我的问题是,是否有一些我可以获取的列表/映射将所有.NET类映射到“using ...”语句和库引用(包括标准文件路径)?或者,我有什么方法可以自动生成这样的列表吗?
答案 0 :(得分:2)
您可以查找提供此功能的第三方产品。市场上有一个很棒的产品ReSharper,它可以从源代码文件(而不是编译代码)构建符号数据库,这也是快速和优化的。它允许您解析符号并添加对程序集的引用,如果它已经从解决方案中的其他项目知道此程序集。我相信它不是唯一的产品。
从系统程序集构建类列表并不难。只需从标准安装中创建系统程序集列表,加载每个程序集并创建公共类列表。查看System.Reflection.Assembly方法,例如Load()和GetTypes()
答案 1 :(得分:1)
我认为您可以在GAC中列出DLL,并使用反射列出每个DLL的所有公共类。
通过这种方式,您可以创建映射,并确定要添加的引用和要添加的using语句。