2016-09-27 3 views
0

Die .NET-Webanwendungen, die wir erstellen, sind über einen WCF-Dienst mit einer Drittanbieteranwendung integriert. Jedes Mal, wenn eine Seite geladen wird, werden mehrere WCF-Serviceaufrufe zum Abrufen von Daten ausgeführt, die zum Füllen einiger Benutzersteuerelemente verwendet werden.Ausgehende WCF-Serviceaufrufe von einer .NET-Webanwendung abfangen

Durch AppDynamics kann ich sagen, dass es bis zu 8 WCF-Aufrufe geben kann, um eine bestimmte Seite zu laden. AppDynamics sagt uns, dass die WCF-Aufrufe bis zu 85% der Ladezeit kosten. Dies wirkt sich erheblich auf die Produktivität der Entwickler aus.

Gibt es eine Möglichkeit, alle ausgehenden WCF-Anrufe von unserer .NET-Webanwendung abzufangen und sie mit gefälschten Daten abzustempeln, damit die Seiten nicht brechen und schneller geladen werden? Die Seiten benötigen diese Daten nicht, um in der Entwicklungsumgebung ausgeführt zu werden.

Vielen Dank für Ihre Eingabe!

John

Antwort

0

Verwendung Dependency Injection stattdessen die tatsächlichen WCF-Endpunkte der Erstellung und Weitergabe herum. Dann ist es trivial, sie zu verspotten. Sie würden dann die Schnittstelle benutzen und DI den Rest erledigen lassen!

+0

Dank @SledgeHammer für Ihre Antwort. Ihre Antwort hat mir klar gemacht, dass ich meiner Frage ein wenig Klarstellung hinzufügen muss. Was ich hinzufügen muss, ist: Der Code, der die WCF-Service-Integrationsaufrufe durchführt, stammt vom Anbieter des WCF-Dienstes und wird als DLLs bereitgestellt. Wie Sie sehen können, haben wir keine Kontrolle über die von ihnen getätigten Anrufe. – John

+1

@ John Dann müssten Sie die DLL in eine Schnittstelle einbinden und DI auf dieser Ebene verwenden. Die echte Schnittstellenimplementierung würde die DLL-Methoden nur als leichtgewichtigen Durchlauf bezeichnen, während die Entwicklungsimplementierung nur leere Methoden wären. – SledgeHammer

+0

Danke für die Richtung. Ich werde es ausprobieren und Sie wissen lassen, wie es geht. – John