Domanda

Sto cercando di ottenere corvo lavorare in una console rhino.etl alla data di importazione da SQL al corvo.

Ho un RavenInstaller:

public class RavenInstaller : IWindsorInstaller
    {
        public void Install(IWindsorContainer container, IConfigurationStore store)
        {
            container.Register(
                Component.For<IDocumentStore>().ImplementedBy<DocumentStore>()
                    .DependsOn(new { connectionStringName = "SomeRavenConnectionString" })
                    .OnCreate(DoInitialisation)
                    .LifeStyle.Singleton
                );
        }

        static IDocumentSession GetDocumentSesssion(IKernel kernel)
        {
            var store = kernel.Resolve<IDocumentStore>();
            return store.OpenSession();
        }

        public static void DoInitialisation(IKernel kernel, IDocumentStore store)
        {
            store.Initialize();
        }
    }

Tuttavia - quando chiamo _documentSession.OpenSession () l'applicazione solo si blocca.

C'è ho bisogno di qualcosa di specificare per l'ambiente console app? Si continua a dire che è scaduta - ma l'url nella configurazione è localhost: 8080 che è corretto

ho cambiato che uso per ora:

using (var documentStore = new DocumentStore { Url = "http://localhost:8080" })
            {
                documentStore.Initialize();
                using (var session = documentStore.OpenSession())
                {
                    var mp = _container.Resolve<MainProcess>();
                    mp.DocumentSession = session;
                    mp.Execute();
                }
            }

, ma ancora appeso su opensession.

È stato utile?

Soluzione

Dove si trova il blocco si verifica effettivamente? In quale metodo all'interno OpenSession?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top