.NET Core中的Assembly.GetEntryAssembly()相当于什么?

时间:2016-11-08 09:25:11

标签: c# .net asp.net-core windows-10-universal .net-core

在.net框架中,我们可以使用以下命令获取起始程序集:

Assembly.GetEntryAssembly();

但是从.NET Core中删除了。此外,没有AppDomain。如何访问.NET Core和Windows Universal应用程序中的条目程序集?

(我需要找到所有嵌入式资源键)

2 个答案:

答案 0 :(得分:9)

Assembly.GetEntryAssembly() .NET Standard 1.5 中可用,但在1.0到1.4版本中不可用。如果您只开发.NET Core和 Universal Windows 应用程序,则1.5版应该足以满足您的需求。

如果我没记错的话,AppDomain注定会出现在 .NET Standard 2.0 中。它现在不可用。

答案 1 :(得分:-2)

我最终将入口程序集注入库中。

在图书馆:

class AssemblyHelper 
{
     // This can be called instead of Assembly.GetEntryAssembly()
     public static Func<Assembly> GetEntryAssembly;
}

在启动应用程序(使用库)中:

class Program
{
    public static void Main()
    {
        AssemblyHelper.GetEntryAssembly = () => typeof(Program).GetAssembly();

        ....
    }
}