我是 WCF 的新手。我创建了一个新的 WCF 服务,它有一个名为 SendFax() 的方法。它在 Windows 服务上运行。我希望其他用户使用此方法,但如何?我用 installutil.exe 安装了 windows 服务,它现在正在运行。我猜我的 WCF 服务正在监听。我怎样才能获得这项服务?我的 Windows 服务代码在这里:
public partial class WCFWinService : ServiceBase
{
ServiceHost serviceHost;
public WCFWinService()
{
InitializeComponent();
ServiceName = "Digiturk FaxPro WCF";
}
protected override void OnStart(string[] args)
{
if (serviceHost != null)
{
serviceHost.Close();
}
serviceHost = new ServiceHost(typeof(FaxPro.WCFWindowsService.WCFWinService));
serviceHost.Open();
}
protected override void OnStop()
{
if (serviceHost != null)
{
serviceHost.Close();
serviceHost = null;
}
}
}
WCF接口代码:
[ServiceContract]
public interface IWCFService
{
[OperationContract]
void SendFax(....);
}
WCF 服务代码:
public class WCFService : IWCFService
{
public void SendFax(...)
{ ... }
有什么建议么?
App.Config 在这里
<?xml version="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IWCFService" />
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:8733/Design_Time_Addresses/Digiturk.FaxPro.WcfServiceLibrary/Service1/"
binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IWCFService"
contract="localhost.IWCFService" name="BasicHttpBinding_IWCFService" />
</client>
</system.serviceModel>
</configuration>