gpt4 book ai didi

.net - PCL 中不存在 Assembly.GetExecutingAssembly

转载 作者:行者123 更新时间:2023-12-03 15:20:27 25 4
gpt4 key购买 nike

我在 VB、VS2012 中设置了一个 PCL,并将其设置为 Profile 78(WinRT、WinPhone8、.NET 4.5)。我没有 GetExecutingAssembly可在 Assembly 上获得.根据 this ,它应该可供 PCL 使用。唯一可用的方法是 Assembly.Load() .

有没有人我应该怎么做?例如。这是真的吗,是我的环境搞砸了,还有其他方法可以访问GetExecutingAssembly除了 Imports System.Reflection ?还有其他想法吗?

最佳答案

一般来说,你应该使用类似 typeof(MyType).GetTypeInfo().Assembly 的东西。而不是 Assembly.GetExecutingAssembly() . GetExecutingAssembly 必须基本上检查调用堆栈以找出调用它的方法,然后查找相应的程序集。如果方法曾经跨程序集边界内联,这可能会中断,这就是 GetExecutingAssembly 方法不在 Profile 78(以及适用于 Windows 应用商店应用程序的 .NET)使用的"new"反射表面区域的原因。

关于.net - PCL 中不存在 Assembly.GetExecutingAssembly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19718232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com