WindowsサービスでホストされているWCFサービスを消費しようとしているときに、HTTP取得エラーが発生しましたが、ターゲットマシンが積極的に拒否したため、接続できませんでした。コンソールアプリケーションのアプリケーションは正常に動作します。問題は、アプリケーションがWindowsサービスでホスティングするときになっています。下位のコードがサービスをホストするために使用しています。WindowsサービスでホストされているWCFサービスを消費中にHTTPを取得する
protected override void OnStart(string[] args)
{
try
{
Uri baseAddress = new Uri("http://localhost:8080/AuditService/");
host = new ServiceHost(typeof(AuditService), baseAddress);
ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
smb.HttpGetEnabled = true;
smb.MetadataExporter.PolicyVersion = PolicyVersion.Policy15;
host.Description.Behaviors.Add(smb);
host.AddServiceEndpoint(typeof(IAuditService), new BasicHttpBinding(BasicHttpSecurityMode.None), baseAddress);
host.Open();
}
catch (Exception)
{
host.Abort();
}
}
http://www.csharptutorial.in/30/csharp-net-how-to-consume-wcf-service- hosted-as-window-services – Popeye