unitTest中异步调用的“托管调试助手DisconnectedContext”错误?

时间:2016-04-27 02:17:39

标签: c# asp.net unit-testing asynchronous visual-studio-2015

我正在尝试进行此单元测试。 register方法是Microsoft生成的MVC4方法。当我在await调用上调试时,我收到此错误:我对每个异步调用都有相同的错误。

[TestMethod]
public async Task TestMethodRegister()
{
    AccountController AccountController = new AccountController();
    IHttpActionResult result = await AccountController.Register(RegisterBinding);
    System.Diagnostics.Debug.WriteLine(result.ToString());
}
  

托管调试助手'DisconnectedContext'在'C:\ PROGRAM FILES(X86)\ MICROSOFT VISUAL STUDIO 14.0 \ COMMON7 \ IDE \ COMMONEXTENSIONS \ MICROSOFT \ TESTWINDOW \ te.processhost.managed.exe'中检测到问题。

其他信息:Échecdela transition vers le contexte COM 0x7235d8 pour ce RuntimeCallableWrapper avec l'erreur suivante:L'objetinvoqués'estdéconnectédeses clients。 (例外de HRESULT:0x80010108(RPC_E_DISCONNECTED))。 Cela se produit habituellement car le contexte COM 0x7235d8 dans lequel ce RuntimeCallableWrapperaétécrééaétédéconnectéouestmpustéàautrechoose。 Libérationdesinterfaces du contexte COM actuel(contexte COM 0x723468)。 Cela peutentraînerdesdysfonctionnements ou des pertesdedonnées。 Pourévitercesurlème,assurez-vous que tous les contextes / cloisonnements / threads COM restent actifs et sont disponibles pour la transition des contextes,tant que l'application n'en a pasterminéaveRuntimeCallableWrappersquireprésententlescomposants COM qui s'麻烦。

2 个答案:

答案 0 :(得分:1)

您是否尝试将以下行添加到测试清理方法中:

GC.Collect(); GC.WaitForPendingFinalizers();

我有类似的问题,它对我有用:

Managed Debugging Assistant 'DisconnectedContext'

答案 1 :(得分:0)

我的connectionString不好,我添加了trycatch来查看错误。