wie kann ich meine web-Referenz in MVC?
Gruß Leute, ich brauche eine Referenz zu einem externen Dienst in meiner MVC-app.
Ich bin mit diesem service, der zur Validierung eines Authentifizierungs-token, das einer unserer Kunden hat angefragt, die wir verwenden.
Ich bin Portierung eines älteren Projekts zu MVC.
Ich habe eine web-Referenz.
Config erzeugt wurde, etwa so:
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="ExternalServicesSoap" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://myapps.test.com/ExternalServices/ExternalServices.asmx"
binding="basicHttpBinding" bindingConfiguration="ExternalServicesSoap"
contract="AssertionService.ExternalServicesSoap" name="ExternalServicesSoap" />
</client>
In der älteren ASP.NET Welt, ich könnte die folgende, auf die spezifischen service, die ich bin Referenzierung, mit der Assertion-Objekt definiert in der externen service-Referenz.
var service = new ExternalServices();
Assertion assertion = service.Validate(Id);
if(assertion.Valid){}
Scheint dies nicht genau die Falle, in die MVC-Projekt.
Ich scheine die Arbeit mit WCF.
Ich bin nicht sicher, wenn ich an dieses ordnungsgemäß in der MVC-Welt.
Alles, was ich habe, mit zu arbeiten ist eine ExternalServiesSoap - Schnittstelle oder eine ExternalServicesSoapChannel - Schnittstelle.
Keiner von denen als Gegenleistung eine Behauptung Objekt wie in der ASP.Net Welt.
Sie haben beide die Überprüfen Methode aber wieder eine ValidateAssertionResponse.
Das response-Objekt nicht über alle nützlichen Eigenschaften; nur eine Antwort Körper.
Die Behauptung Klasse ist immer noch zugänglich, aber es scheint nicht zu sein, kehrte von einer der interface-Methoden.
Kann mir jemand helfen, wie man richtig verwenden Sie eine dieser Schnittstellen?
Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Anstatt das hinzufügen einer Service-Referenz, einen Webverweis hinzufügen. Der rechten Maustaste auf Ihr Projekt, wählen Sie "Add Service Reference...". Im Dialogfeld Dienstverweis Hinzufügen, klicken Sie auf "Erweitert", dann klicken Sie auf "Add Web Reference". Dies generiert ein proxy, der geeignet ist für die Verwendung mit ASMX-basierten Diensten.