2017-06-15 6 views
1

私はwcfプロジェクトを持っており、それをテストするクライアントを作成しています。何らかの理由で、私のローカルマシン上で私はIIS Express内でのみVisual Studioからサービスを実行できます。私はプロジェクトを開始した後、私はクライアントからサービスに接続しようとしているが、私はエラーを取得しています:WCF:IISExpressのtcpバインディングに関する問題

You have tried to create a channel to a service that does not support .Net Framing. It is possible that you are encountering an HTTP endpoint.

私はthisthisを読みましたが、彼らはIISについて議論していませんIIS Express。

は、サービスのみ受け付けています...

NetTcpBinding binding = new NetTcpBinding(); 
EndpointAddress address = new EndpointAddress("net.tcp://localhost:64255/MyService.svc"); 
ChannelFactory<IMyInterface> channelFactory = new ChannelFactory<IMyInterface>(binding, address); 

channelFactory.Open(); 
IMyInterface _clientProxy = channelFactory.CreateChannel(); 
((IClientChannel)_clientProxy).Open(); 

そして、私はメソッドOpenを呼んでいるとき、私は上記のエラーを取得しています:ここで

は、クライアントからの私のコードですnet.tcpプロトコル。

クライアントからIIS Expressでホストされているこのサービスを呼び出すには、何を変更する必要がありますか?

編集:私は、ブラウザで私がURLを見ている、視覚的Studioからプロジェクトを実行している:http://localhost:64255/MyService.svc

答えて

1

かいつまん:IIS Expressは、このようなnet.tcpなどの非HTTPプロトコルをサポートしていません。 。 IIS ExpressはプロトコルとしてHTTPとHTTPSのみをサポートしています

+0

おかげさまで、私もこの問題を抱えていました。 –

関連する問題