Beispiel #1
0
        private static IUnityContainer RegisterLogger(this IUnityContainer container, string logerName)
        {
            container.RegisterType <ILogger>(new ContainerControlledLifetimeManager(),
                                             new InjectionFactory(f =>
            {
                try
                {
                    return(NLogger.CreateEventLogTarget(source: "Server", logName: logerName));
                }
                catch (Exception)
                {
                    return(NLogger.CreateEventLogTarget());
                }
            }));

            return(container);
        }
Beispiel #2
0
        private static IUnityContainer RegisterWcfHosting(this IUnityContainer container, string serviceIp, int servicePort)
        {
            container
            .RegisterServerWcf(
                o => o.RegisterServiceConnection(reg => reg.NetTcp(serviceIp, servicePort))
                .RegisterServiceHostFactory(reg => reg.WithBehaviors()
                                            .AddErrorHandlersBehavior(eReg => eReg.AddBusinessErrorHandler().AddLoggingErrorHandler(NLogger.CreateEventLogTarget()))
                                            .AddDependencyInjectionBehavior())
                );

            return(container);
        }