.NET Core 中 Assembly.GetEntryAssembly() 的等价物是什么?
What is the equivalent of Assembly.GetEntryAssembly() in .NET Core?
在 .net 框架中,我们可以使用以下方法获取起始程序集:
Assembly.GetEntryAssembly();
但这已从 .NET Core 中删除。也没有 AppDomain。如何访问 .NET Core 和 Windows 通用应用程序中的入口程序集?
(我需要找到它所有的嵌入式资源密钥)
Assembly.GetEntryAssembly()
在 .NET Standard 1.5 中可用,但在版本 1.0 到 1.4 中不可用。如果您只开发 .NET Core 和 通用 Windows 应用程序,版本 1.5 应该足以满足您的需求。
如果我没记错的话,AppDomain
注定会出现在.NET Standard 2.0中。现在不可用。
我最终将入口程序集注入了库。
在图书馆:
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();
....
}
}
在 .net 框架中,我们可以使用以下方法获取起始程序集:
Assembly.GetEntryAssembly();
但这已从 .NET Core 中删除。也没有 AppDomain。如何访问 .NET Core 和 Windows 通用应用程序中的入口程序集?
(我需要找到它所有的嵌入式资源密钥)
Assembly.GetEntryAssembly()
在 .NET Standard 1.5 中可用,但在版本 1.0 到 1.4 中不可用。如果您只开发 .NET Core 和 通用 Windows 应用程序,版本 1.5 应该足以满足您的需求。
如果我没记错的话,AppDomain
注定会出现在.NET Standard 2.0中。现在不可用。
我最终将入口程序集注入了库。
在图书馆:
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();
....
}
}