vielleicht können Sie mir helfen, meinen WCF-Dienst einzurichten.Es gab keinen Kanal, der aktiv zuhörte
Als erstes ist hier meine Config-Datei:
<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
<bindings />
<services>
<service name="AuthenticatorService.Authenticator">
<endpoint address="auth" binding="basicHttpBinding" bindingConfiguration=""
name="AuthEndpoint" contract="AuthInterface.IAuthenticator" />
<endpoint address="mex" binding="mexHttpBinding" name="MetadataEndpoint"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="True" />
<serviceDebug includeExceptionDetailInFaults="True" />
</behavior>
</serviceBehaviors>
</behaviors>
Und das ist, wie ich meinen Dienst von C# anrufen:
//This creates a link to the WCF service using basicHttpBingind
httpFactory = new ChannelFactory<IAuthenticator>(new BasicHttpBinding(), new EndpointAddress("http://myUrl/auth.svc"));
httpProxy = httpFactory.CreateChannel();
Es funktionierte gut, wenn ich das tat auf localhost, aber jetzt sagt es mir, dass kein Endpunkt gefunden wurde.
Auch erzeugt der Server den folgenden Fehler:
System.ServiceModel.EndpointNotFoundException: Es war aktiv kein Kanal auf 'http: //myURL/auth.svc/$metadata' hören. Dies wird oft durch einen falschen Adress-URI verursacht. Stellen Sie sicher, dass die Adresse, an die die Nachricht gesendet wird, mit einer Adresse übereinstimmt, auf der ein Dienst empfangsbereit ist.
Ich bin wirklich verwirrt, ich habe keine Ahnung, warum das passiert. Muss ich eine andere Servicedatei für den Metadatenaustausch erstellen?
Muss ich eine baseAddress festlegen?
Danke