在ASP.NET Core中,可以使用AssemblyLoadContext.Default.Assemblies
属性来获取已加载的程序集。以下是使用AssemblyLoadContext.Default.Assemblies
属性的示例代码:
using System.Reflection;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
// 获取已加载的程序集
var assemblies = AssemblyLoadContext.Default.Assemblies;
// 遍历每个程序集
foreach (var assembly in assemblies)
{
// 输出程序集的名称
Console.WriteLine(assembly.FullName);
}
}
}
请注意,AssemblyLoadContext.Default.Assemblies
属性只返回已加载的程序集,并不会自动加载未加载的程序集。如果需要加载未加载的程序集,请参考以下示例代码:
using System.Reflection;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
// 加载指定的程序集
Assembly assembly = Assembly.Load("YourAssemblyName");
// 获取加载的程序集的所有引用程序集
var referencedAssemblies = assembly.GetReferencedAssemblies();
// 遍历每个引用程序集
foreach (var referencedAssembly in referencedAssemblies)
{
// 输出引用程序集的名称
Console.WriteLine(referencedAssembly.FullName);
}
}
}
在上面的示例中,使用Assembly.Load("YourAssemblyName")
方法加载了指定的程序集,并使用GetReferencedAssemblies()
方法获取了该程序集的所有引用程序集。