在.net框架中,我们可以使用以下命令获取起始程序集:
Assembly.GetEntryAssembly();
但是从.NET Core中删除了。此外,没有AppDomain。如何访问.NET Core和Windows Universal应用程序中的条目程序集?
(我需要找到所有嵌入式资源键)
答案 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();
....
}
}