我对如何正确关闭WCF客户端感到有点困惑,这个客户端被统一注册为单例。 这是注册WCF客户端的代码:
//Register service in container
InstanceContext instanceContext = new InstanceContext(new PlatformCallback());
unityContainer.RegisterType<IPlatformInterface, Platform>(
new ContainerControlledLifetimeManager(),
new InjectionConstructor(instanceContext));
所以,这个服务注册为singleton,我想知道如何为这个服务客户端调用Close()方法。
如果没有容器,我会在应用启动时打开客户端,然后在应用关闭之前将其关闭。
这里的上下文是一个WPF应用程序,我不确定当用户关闭主窗口时WCF服务实例是否仍然有效。 在应用程序的OnExit方法中解析服务然后调用Close来清理任何资源是不是一个好主意?