我正在尝试允许用户配置WCF服务,包括服务监听的IP和端口号。用户有一个单独的配置应用程序,可以设置这些值,但我遇到的问题是必须在app.config中定义一个终结点才能创建新的ServiceHost条目...但我的终结点在单独的配置文件中定义,必须在运行时以编程方式绑定。如果我按照如何在程序中修改WCF app.config终结点地址设置?所述进行操作:
该服务将同时监听在app.config中定义的URI和配置文件中定义的URI上。我找不到任何方法来删除原始终结点或创建没有定义终结点的服务。
从配置应用程序中写入app.config不是一个选项 - 我需要通过编程从单独的XML配置文件中获取配置值...
有什么想法吗?
编辑:该服务作为Windows服务运行,并公开HTTP端点,它不作为托管在IIS中的Web服务运行 - 如果改变了这些内容,请告知。
m_SvcHost = new ServiceHost(this);
if (Config.ServiceEndpoint != null && Config.ServiceEndpoint != String.Empty)
{
m_SvcHost.AddServiceEndpoint(typeof(IMyService),
new BasicHttpBinding(),
Config.ServiceEndpoint);
}
m_SvcHost.Open();
该服务将同时监听在app.config中定义的URI和配置文件中定义的URI上。我找不到任何方法来删除原始终结点或创建没有定义终结点的服务。
从配置应用程序中写入app.config不是一个选项 - 我需要通过编程从单独的XML配置文件中获取配置值...
有什么想法吗?
编辑:该服务作为Windows服务运行,并公开HTTP端点,它不作为托管在IIS中的Web服务运行 - 如果改变了这些内容,请告知。