private DomainService GetDomainService(object instance, WcfDomainServiceContext context) { // create and initialize the DomainService for this request DomainServiceBehavior.DomainServiceInstanceInfo instanceInfo = (DomainServiceBehavior.DomainServiceInstanceInfo)instance; try { DomainService domainService = DomainService.Factory.CreateDomainService(instanceInfo.DomainServiceType, context); instanceInfo.DomainServiceInstance = domainService; return(domainService); } catch (TargetInvocationException tie) { if (tie.InnerException != null) { throw ServiceUtility.CreateFaultException(tie.InnerException, context.DisableStackTraces); } throw ServiceUtility.CreateFaultException(tie, context.DisableStackTraces); } catch (Exception ex) { if (ex.IsFatal()) { throw; } throw ServiceUtility.CreateFaultException(ex, context.DisableStackTraces); } }
private DomainService GetDomainService(object instance) { // create and initialize the DomainService for this request DomainServiceBehavior.DomainServiceInstanceInfo instanceInfo = (DomainServiceBehavior.DomainServiceInstanceInfo)instance; IServiceProvider serviceProvider = (IServiceProvider)OperationContext.Current.Host; DomainServiceContext context = new DomainServiceContext(serviceProvider, this.operationType); try { DomainService domainService = DomainService.Factory.CreateDomainService(instanceInfo.DomainServiceType, context); instanceInfo.DomainServiceInstance = domainService; return(domainService); } catch (TargetInvocationException tie) { if (tie.InnerException != null) { throw ServiceUtility.CreateFaultException(tie.InnerException); } throw ServiceUtility.CreateFaultException(tie); } catch (Exception ex) { if (ex.IsFatal()) { throw; } throw ServiceUtility.CreateFaultException(ex); } }