RIA 経由でデータを使用する Silverlight アプリケーションがあります。一部のメソッドは、WPF アプリケーションだけでなく Silverlight でも Service Reference を介して使用できるように公開されています。開発時には、これらのサービスは localhost を介して呼び出され、すべて正常に動作します。サブドメイン.ドメイン.com. 現在 (数回再起動した後)、別のブラウザーを介して .svc にアクセスすると、同じ URL の Chrome と Internet Explorer で異なる応答が得られます。
Chromeの表示: [名前] サービス、このサービスをテストするには、クライアントを作成し、それを使用してサービスを呼び出す必要があります。これは、コマンド ラインから次の構文で svcutil.exe ツールを使用して行うことができます: ... サービスの説明に単一のファイルとしてアクセスすることもできます: ...
Internet Explorer、Firefox の表示: [名前が表示されません] サービス、このサービスをテストするには、クライアントを作成し、それを使用してサービスを呼び出す必要があります。コマンド ラインから svcutil.exe ツールを使用して、次の構文でこれを行うことができます: ... 最後の部分 (2 番目の URL、単一ファイル アクセス リンク) が Internet Explorer にありません。
しかし、最悪の部分は、サービス参照を追加するときに VS2012 で同じ URL を入力すると、次のメッセージが表示されることです。
リクエストは HTTP ステータス 404: Not Found で失敗しました。メタデータに解決できない参照が含まれています: ...
事実上同じ要求に対してサービスが 3 つの異なる応答を返すにはどうすればよいでしょうか?
更新: おそらく有用な情報は、このサービスが別の .svc ファイルに含まれているのではなく、ProjectDomainService.cs (および AuthenticationDomainService.cs) であり、.svc URL が自動的にキャッチされることです (そのようなファイルはサーバーに存在しません)。そして、削除すると、Chrome は Internet Explorer と同じように動作します。
<add name="Soap" type="Microsoft.ServiceModel.DomainServices.Hosting.SoapXmlEndpointFactory, Microsoft.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
web.config から。
また、subdomain.domain.com に ping を実行すると、ローカル IP が表示されます。