.NET Framework、.NET Core 或 .NET Standard 中是否有任何公共 API 可以将 a 解析为System.Reflection.AssemblyName
将要加载的程序集文件的文件路径,而无需实际加载该程序集?
我目前得到的最好的是:
string ResolveToPath(AssemblyName name) => Assembly.ReflectionOnlyLoad(name).Location;
但这仍然会导致程序集被加载(尽管只加载到仅反射上下文中)。
(假设我不想改变运行时定位程序集的方式。我要求在库中使用它,我不能随意检查应用程序配置文件、定义AppDomain.AssemblyResolve
处理程序等)