c#

C#中如何加载和卸载Assembly

小樊
236
2024-08-12 04:48:37
栏目: 编程语言
开发者专用服务器限时活动,0元免费领! 查看>>

在C#中,可以使用Assembly.Load方法来加载一个Assembly,使用Assembly.Unload方法来卸载一个Assembly。

加载Assembly的示例代码如下:

Assembly assembly = Assembly.Load("AssemblyName");

卸载Assembly的示例代码如下:

AppDomain.CurrentDomain.GetAssemblies().ToList()
    .ForEach(a =>
    {
        if (a.FullName.StartsWith("AssemblyName"))
        {
            AppDomain.CurrentDomain.Load(a.FullName);
            AppDomain.CurrentDomain
                .GetAssemblies()
                .Where(
                    currentAssembly =>
                        currentAssembly.FullName == a.FullName
                )
                .ToList()
                .ForEach(currentAssembly =>
                {
                    AppDomain.CurrentDomain
                        .Load(currentAssembly.FullName)
                        .GetTypes()
                        .ToList()
                        .ForEach(
                            type =>
                            {
                                if (type != null)
                                    currentAssembly.CreateInstance(
                                        type.FullName
                                    );
                            }
                        );
                });
        }
    });

请根据实际情况调整代码中的Assembly名称和逻辑。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

相关推荐:C#中如何实现Assembly的静态引用和动态引用

0
看了该问题的人还看了