2011-06-21 12 views
0

私は、WCFサービスがあります。下記のWCFサービスの複数のエンドポイント構成

https://myservice/service.svc 
https://myservice/service.svc?wsdl 

は(あなたがより多く必要な場合は私に知らせて)私のWCFアプリケーションのweb.configファイルの関連セクションです:

<bindings> 
<basicHttpBinding> 
    <binding name="basicHttp"> 
    <security mode="TransportWithMessageCredential"> 
    <message clientCredentialType="UserName"/> 
    </security> 
    </binding> 
</basicHttpBinding> 
</bindings> 

<behaviors> 
<serviceBehaviors> 
    <behavior name="MyService.ServiceBehavior"> 
    <serviceMetadata httpsGetEnabled="true"/> 
    <serviceDebug includeExceptionDetailInFaults="true"/> 
    <serviceCredentials> 
    <userNameAuthentication userNamePasswordValidationMode="MembershipProvider" membershipProviderName="SqlMembershipProvider"/> 
    </serviceCredentials> 
    <serviceThrottling maxConcurrentCalls="100" maxConcurrentInstances="100" maxConcurrentSessions="100"></serviceThrottling> 
    </behavior> 
</serviceBehaviors> 
</behaviors> 

<services> 
<service behaviorConfiguration="MyService.ServiceBehavior" name="MyService.Service"> 
    <endpoint address="/ClientA" binding="basicHttpBinding" bindingConfiguration="basicHttp" name="basicHttpEndpoint" contract="MyService.IService"></endpoint> 
    <endpoint address="/ClientB" binding="basicHttpBinding" bindingConfiguration="basicHttp" name="basicHttpEndpoint" contract="MyService.IService"></endpoint> 
    <endpoint address="/ClientC" binding="basicHttpBinding" bindingConfiguration="basicHttp" name="basicHttpEndpoint" contract="MyService.IService"></endpoint> 
    <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/> 
</service> 
</services> 

私のクライアントが以下のリンクを介してサービスにアクセスできるようにしたいが、リンクが機能しないようにする:(もしそうなら、私の文法が間違っているかもしれないが、私に知らせてください)

https://myservice/service.svc/ClientA 
https://myservice/service.svc/ClientB 
https://myservice/service.svc/ClientC 

https://myservice/service.svc?wsdl/ClientA 
https://myservice/service.svc?wsdl/ClientB 
https://myservice/service.svc?wsdl/ClientC 

https://myservice/service.svc?wsdl/asfgvafgfgf ... (this works too !!!) 

どのように私に教えてください....

次のリンクは動作しますが、私は最後の前方後に何かを書き、それはまだ動作スラッシュかのように、これは、私の設定が原因であるとは思いませんこれを達成する。私はすべてのクライアントのために別々のサービスを作成したくありません。

この場合、私はサービスで公開されている各クライアントのメソッドが異なるため、すべてのクライアントのエンドポイント定義で異なるcontract = "MyService.IService"を使用します。

また、どのエンドポイントクライアントがサービスにアクセスしているかによって、使用する接続文字列を指定することができますか?

そして最後に:私はいけない:アクセスできるようにする

https://myservice/service.svc 
https://myservice/service.svc?wsdl 

リンクを、私はクライアントが唯一の彼らの指定されたリンクを使用したい...

は、そのすべてで可能である、または私が作成する必要があります各クライアントの個別のサービス...?

ありがとうございました。

+1

「/」を付けずに試し始めましたか? –

+0

yehちょうど試みた、動作しない、エクスプローラはページが見つかりません(最後の試行と同じ)私はそれを介してアクセスしようとしていると言う:https://myservice/service.svc/ClientA ...(私はアクセスしながら何か間違っているそれは、私のリンクに何か問題があるということです...) – user402186

答えて

関連する問題