Está bien aunque yo lo implementatría distinto.En el constructor
de CastleSharedEngineProvider injectaría ValidatorEngine y en Castle
registraría ISharedEngineProvider.
En la configuración de NHV le pido a WindSor, o mejor al ServiceLocator, la
instancia de ISharedEngineProvider.

El 24 de abril de 2009 13:38, "José F. Romaniello"
<[email protected]>escribió:

>
> Y ya que estamos hablando de rudimentario, yo no me animaba a mostrar el
> mio por las duda les causara asco,
> tiene esta pinta esta "pasable" por lo menos?:
>
>   public class CastleSharedEngineProvider : ISharedEngineProvider
>    {
>        public ValidatorEngine GetEngine()
>        {
>            var containerAccessor =
> HttpContext.Current.ApplicationInstance as IContainerAccessor;
>
>            if (containerAccessor == null)
>                throw new Exception("No se encontro IContainerAccessor");
>
>            var ve = containerAccessor.Container.Resolve<ValidatorEngine>();
>
>            return ve;
>        }
>    }
>
> en el container lo meto asi :
>
> Component.For<ValidatorEngine>()
>                                        .Instance(ve)
>                                        .LifeStyle.Singleton
>
> (creo que el singleton no haría falta ya que le estoy pasando una
> instancia concreta).
>
>
> Fabio Maulo escribió:
> > barbaro me preocupa solo lo de "rudimentario"... para eso usá lo que
> > está en NHV que ya es static por si mismo.
> >
> > El 24 de abril de 2009 13:01, Juan <[email protected]
> > <mailto:[email protected]>> escribió:
> >
> >
> >     Por ahora tengo un ISharedEngineProvider rudimentario que lo creo en
> >     codigo y se lo pongo al
> >     NHibernate.Validator.Enviroment.SharedEngineProvider antes de
> >     configurar el NHibernate para asegurarme que es la misma engine que
> >     va  a utilizar NH, en los pre update/delete listeners.
> >
> >     Pero queria quitarme esa dudita, ya que con la App/Web config puedo
> >     hacer lo mismo, aunque yo lo hago a mano por el hecho de tener la
> >     config de nhv en una archivo aparte.
> >
> >     Gracias
> >
> >     On 23 abr, 11:58, Dario Quintana <[email protected]
> >     <mailto:[email protected]>>
> >     wrote:
> >     > Otra opción, que se podría usar para configurar con
> >     nhvalidator.cfg.xml:
> >     > ..
> >     > var vtor = new ValidatorEngine();
> >     > vtor.Configure(); //lee el nhvalidator.cfg.xml
> >     > ..
> >     >
> >     > Cuando se lee de la configuración se instancia el SharedEngine,
> >     pero la
> >     > instancia 'vtor' se la podría:
> >     > 1) "copiar" la instancia adentro del SharedEngine, entonces se
> >     usa la misma
> >     > instancia.
> >     > 2) descartarla, y que el SharedEngine cree otra instancia. Pero
> >     ahí queda
> >     > feo porque, en cada aplicación se habrían creado por lo menos dos
> >     > ValidatorEngine.
> >     >
> >     > 2009/4/23 Fabio Maulo <[email protected]
> >     <mailto:[email protected]>>
> >     >
> >     > > La razon es que es la unica forma de garantizar que el
> >     ValidatorEngine sea
> >     > > realmente shared.Pero podes asignar el SharedEngine a mano.
> >     >
> >     > --
> >     > Dario Quintanahttp://darioquintana.com.ar
> >     <http://darioquintana.com.ar>
> >
> >
> >
> >
> > --
> > Fabio Maulo
> >
> > >
>
>
> >
>


-- 
Fabio Maulo

--~--~---------~--~----~------------~-------~--~----~
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano
-~----------~----~----~----~------~----~------~--~---

Responder a