[英]Why would Assembly.GetExecutingAssembly() return null?
[英]Windows phone 8.1 Assembly.GetExecutingAssembly not available
我使用反射来注册控制反转的默认实例。 我需要扫描所有已加载的程序集,然后遍历每个类型并注册。 问题是,在我的visual studio代码文件中,我没有方法Assembly.GetExecutingAssembly()
或我通常期望的任何其他方法。
为什么会这样呢? 我的代码应如下所示:
foreach (var type in (Assembly.GetExecutingAssembly().GetTypes())
{
if (type.IsClass && !type.IsAbstract)
{
//registers the type for an interface it implements
}
}
你不能像你发现的那样在WinRT中执行程序集 - 但你可以输入“你的程序集” - typeof(AnyTypeInYourAssembly).GetTypeInfo().Assembly
我对此进行了更多的研究,结果发现问题在于Windows Phone 8.1应用程序与WinRT应用程序具有相同的限制。 WinRT运行时没有GetExecutingAssembly方法。
你被迫使用变通办法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.