0
我有多个WCF服务托管在IIS中,我正在应用相同的自定义服务行为。我正在寻找一种方法来通过配置将行为传递给行为,例如在behaviorExtensions或行为元素中。有没有办法通过配置将参数传递给自定义服务行为
如果有帮助,我还加入了自定义消息督察ApplyDispatchBehavior,所以我需要传递参数给检查员:
public void ApplyDispatchBehavior(ServiceDescription serviceDescription, ServiceHostBase serviceHostBase)
{
foreach (ChannelDispatcher channelDispatcher in serviceHostBase.ChannelDispatchers)
{
foreach (EndpointDispatcher endpointDispatcher in channelDispatcher.Endpoints)
{
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(
new ValidatingMessageInspector(<custom parameters>));
}
}
}
只需在web.config中创建一个配置节并使参数有效?如果是这样,你可以在那里读取配置并应用它,或者如果参数是基本的,甚至可以使用appSettings。 – 2014-12-06 00:23:53
谢谢@PabloRomeo。这看起来是唯一的方法,所以我会接受它作为答案。复杂的是配置参数因服务而异,所以行为需要读取特定于该服务的配置。 – 2014-12-08 14:09:19