gpt4 book ai didi

c# - 从 MSTest Runner 或控制台应用程序的调试器下使用 PortableClassLibrary 类中的 ConfiguredTaskAwaitable 有什么问题?

转载 作者:可可西里 更新时间:2023-11-01 08:29:36 26 4
gpt4 key购买 nike

注意:这只是一个调试时错误,但却是一个非常奇怪的错误。

问题:

在附加调试器的情况下运行并调用方法时,暴露在单独的可移植库中,返回 ConfiguredTaskAwaitable ,我们得到 InvalidProgramException .

重现它:

有 2 个项目:

  1. PortableClassLibrary(支持 .Net 4.5;Windows 应用商店;Windows Phone 8)有 1 个类:

    public class Weird
    {
    public static ConfiguredTaskAwaitable GetConfiguredTaskAwaitable()
    {
    return new ConfiguredTaskAwaitable();
    }
    }
  2. ConsoleApplication 代码:

    static void Main(string[] args)
    {
    Weird.GetConfiguredTaskAwaitable();
    }

注意事项:

  1. 替换 ConfiguredTaskAwaitableConfiguredTaskAwaitable<T> (通用版本)修复了这个奇怪的问题
  2. 在 Debugger 下使用此方法从 WP8 或 Win8 应用程序工作正常。

目前它会导致问题,因为我无法在调试器下运行我的单元测试。我被迫更改我的“ObjectUnderTest”实现返回通用 ConfiguredTaskAwaitable<T> ,这对于实际项目来说很好,但仍然只是一种解决方法。

问题是:

有人知道这个错误的原因吗?它肯定与可移植类库魔法有关。

最佳答案

您使用的是启用了 IntelliTrace 的 Visual Studio Ultimate 2012 吗?这看起来像一个错误,应该在最新的 CTP 中修复。 Visual Studio 2012、更新 2 和 future 版本。

您可以通过转到工具/选项/IntelliTrace 并关闭“启用 IntelliTrace”来确认这是问题(并解决它直到您得到修复)。

关于c# - 从 MSTest Runner 或控制台应用程序的调试器下使用 PortableClassLibrary 类中的 ConfiguredTaskAwaitable 有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13726444/

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