0

我正在尝试使用以下注册拦截 WCF 服务服务器端的方法:

containerBuilder.RegisterType<Service>().As<IServiceContract>().InstancePerLifetimeScope()
                .EnableInterfaceInterceptors().InterceptedBy(typeof(MethodInterceptor));

但是,当我这样做时,服务端点消失了。WCF 服务托管在 Windows 服务中。有任何想法吗?

我收到的异常如下:

System.ServiceModel.EndpointNotFoundException:没有http://localhost:8000/endpointaddress可以接受消息的端点监听。这通常是由不正确的地址或 SOAP 操作引起的。有关更多详细信息,请参阅 InnerException(如果存在)。---> System.Net.WebException:远程服务器返回错误:(404)未找到。

MethodInterceptor 注册如下:

containerBuilder.Register(componentContext => new MethodInterceptor(invocation =>
{
    return new NLogToLoggerAdaptor(LogManager.GetLogger(invocation.InvocationTarget.GetType().FullName));
})).InstancePerLifetimeScope();
4

0 回答 0