我有一个 WCF 服务ServiceBehavior.InstanceContextMode = InstanceContextMode.PerSession
。
我如何需要向 Autofac 注册服务才能为每个新会话获取一个新实例,但在会话中使用相同的实例?我目前正在使用以下配置,它会导致如下行为PerCall
:
builder.Register(c => new ChannelFactory<IUserService>()).SingleInstance();
builder.Register(c => c.Resolve<ChannelFactory<IUserService>>().CreateChannel())
.UseWcfSafeRelease();
builder.RegisterType<UserService>().AsImplementedInterfaces();