Esto es una ligera variación de esta pregunta: Possible to use a singleton with a non-default constructor in C#?¿Es posible usar un singleton con un constructor no predeterminado en C#?
Tengo una clase que toma los parámetros para su constructor. Me gustaría hacer este singleton de modo que los parámetros se tomen al inicializar el singleton y, por lo tanto, no necesitarían pasarse cada vez que se recupere la instancia.
Mi solución (que no es elegante) para esto es tener un método estático CreateInstance()
que toma los parámetros y construye la instancia singleton. Entonces tendría otro método estático GetInstance()
que sería sin parámetros para obtener la instancia singleton. En el código, necesitaría garantizar que la lógica llame al CreateInstance
antes de cualquier llamada a GetInstance. Sin embargo, no puedo aplicar esto en tiempo de compilación. Puedo, sin embargo, comprobar en tiempo de ejecución al lanzar una excepción en GetInstance
si se llama antes de CreateInstance
.
¿Hay alguna forma de conseguir este comportamiento con la aplicación de tiempo de compilación? O al menos, ¿hay una mejor manera de hacer lo mismo?
@ user691226 ¿Podría usted algún código de cómo ha hecho esto? ya, puedo tener algunos consejos. – msarchet