1

私は wcf サービスを書きましたが、http バインディングを使用して IIS7 にデプロイすると、すべて正常に動作します。

netcp バインディングを使用して、Windows プロセス アクティベーション サービス (WAS) に同じものを展開したいと考えています。svcutil を使用してサービスのプロキシを作成しようとすると、以下のエラー メッセージが表示されます: エラー: net.tcp://localhost/myservice/service.svc からメタデータを取得できません。アクセスできる場合は、指定したアドレスでメタデータの発行が有効になっていることを確認してください。メタデータの発行を有効にする方法については、MSDN のドキュメント ( http://go.microsoft.com/fwlink/?LinkId=65455 ) を参照してください。

WS-Metadata Exchange エラー URI: net.tcp://localhost/servicemodelsamples/service.svc メタデータに解決できない参照が含まれています: 'net.tcp://localhost/servicemodelsamples/service.svc'。

ここにweb.configがあります:

<system.serviceModel>
    <services>
      <service name="MyProj.Myservice"behaviorConfiguration="CalculatorServiceBehavior">
        <!--This endpoint is exposed at the base address provided by host: net.tcp://localhost/servicemodelsamples/service.svc -->
        <endpoint binding="netTcpBinding" bindingConfiguration="PortSharingBinding"contract="MyProj.ICalculator"  />
        <!--the mex endpoint is explosed at net.tcp://localhost/servicemodelsamples/service.svc/mex -->
        <endpoint address="mex"binding="mexTcpBinding"contract="IMetadataExchange"  />
      </service>       
    </services>
    <bindings>
      <netTcpBinding>
        <binding name="PortSharingBinding" portSharingEnabled="true">
          <security mode="None"  />
        </binding>             
      </netTcpBinding>
    </bindings>
    <!--For debugging purposes set the includeExceptionDetailInFaults attribute to true-->
    <behaviors>
      <serviceBehaviors>
        <behavior name="CalculatorServiceBehavior">
          <serviceMetadata  />
          <serviceDebug includeExceptionDetailInFaults="False"  />
        </behavior>                   
      </serviceBehaviors>
    </behaviors>

ありがとう、

4

1 に答える 1

0

.net 4 で、「Net.Tcp Listener Adapter」サービスが SMSvcHost.exe の .net 4 バージョンを使用しているかどうかを確認します (...\v4.0.30319\SMSvcHost.exe である必要があります) .net 4 のインストールを修復しない場合

于 2011-09-12T23:08:54.840 に答える