I Unit-Tests für eine WinRT app ich schreibe, und ich bin in der Lage nicht-Asynchron-private Methoden aufrufen mit diesen:Wie erwartet man eine asynchrone private Methode, die durch Reflektion in WinRT aufgerufen wird?
TheObjectClass theObject = new TheObjectClass();
Type objType = typeof(TheObjectClass);
objType.GetTypeInfo()
.GetDeclaredMethod("ThePrivateMethod")
.Invoke(theObject, null);
Wenn jedoch die private Methode in Frage async
ist, wird der Code-Ausführung weiter ohne darauf zu warten, dass es zu Ende geht.
Wie füge ich await
Funktionalität zu diesem hinzu?
Da dies eine WinRT App ist, habe ich das Gefühl, dass Reflektion/Aufruf von privaten Mitgliedern nicht erlaubt ist. Ich kann nicht offizielle Dokumentation von diesem auf Google im Augenblick finden, am nächsten ist: http://blogs.microsoft.co.il/blogs/sasha/archive/2011/09/17/metro-net-framework-profile-windows -tailored.aspx EDIT: Dies sind jedoch Unit-Tests, also ist es vielleicht kein Problem. :) –
@Chris Sinclair Eigentlich funktioniert der Code, den ich oben habe, perfekt für private Methoden. Mein Problem ist speziell mit asynchronen. Das Problem würde auch für öffentliche Methoden gelten, die über Reflektion aufgerufen werden. – jokeefe