none
Problemas con libreria microsoft.practices.enterpriselibrary.data en winform RRS feed

  • Pregunta

  • Tenia un rutina que utilizaba en prorgamas web con un metodo de este tipo en que utilizaba la libreria microsoft.practices.enterpriselibrary.data

    (adjunto código), pero esta me dejo de funcionar cuando trabajé con winform

    el form que esta referenciado a una libreria de clases se desreferencia, si elimino tal codigo

    del metodo me funciona 

    ¿que puede estar pasando?

    Gracias

            public Database getConexion(String nameDB)
            {
                const String MPREFIX = " [getConexion]";

                Database dbConn = null;


                try
                {
                    dbConn = DatabaseFactory.CreateDatabase(nameDB);

                }
                catch
                {
                    throw new Exception("CONNECTION_DATABASE_EXCEPTION");
                }

                return dbConn;
            }

    martes, 24 de julio de 2012 16:45

Todas las respuestas

  • Pero que fue lo que dejo de funcionar?????? el codigo que coloca mas abajo???????. Recuerda que debe agregar la referencia que tiene en la aplicacion web(relacionada con microsoft.practices.enterpriselibrary) a la aplicacion de escritorio. No entiendo muy bien podria explicar mejor?????

    Angel R. Jimenez G.
    Software Development
    Santo Domingo
    Republica Dominicana
    Blog

    martes, 24 de julio de 2012 19:35
  • Estimado Angel:

    Discúlpame,  voy a tratar de ser más preciso.

    El código de más abajo es un método que pertenece a una clase general del sistema que se definió para manejar la conexión a la base de datos.

    denominada Base.cs   y esta clase es parte de un proyecto de biblioteca de clases, que corresponde a la capa de negocios

    esta utiliza  método utiliza microsoft.practices.enterpriselibrary.data

    Por otro lado yo tenia en la capa de presentación en web(la que  funciona con normalidad) una referencia  al anterior proyecto

    de negocios o ensamblado y en la pagina en el respectivo codebehind  el using que me referencia la pagina a la biblioteca de clases

    Y esta no me daba ningún problema.

    elimine el proyecto web

    Luego agregue un proyecto winform 

    referencie el proyecto de las bibioteca de negocio en el proyecto winform

    y cuando coloque la referencia con using en el codigo del form me arroja error como si este no se visualizara y no se pudiera referenciar.

    Lo mas curioso es que cuando comento ese metodo, si me visualiza para otros clases de la biblioteca de clases de negocio, sino que pareciera

    que únicamente al utilizar metodo en particular y que hace referencia a esa libreria (microsoft.practices.enterpriselibrary.data)

    es que ocurre el problema.

    ¿Hay algo que pudiera estar faltando?, yo pensé a lo mejor algo en relación con el app.config que pudiera ser diferente al web.config

    pero he estado probando y nada.

    Te agradeceré mucho vuestra ayuda.

    Cordialmente

    Valentín Lozoya Gaete

    El código del método

            public Database getConexion(String nameDB)

            {
                const String MPREFIX = " [getConexion]";

                Database dbConn = null;


                try
                {
                    dbConn = DatabaseFactory.CreateDatabase(nameDB);

                }
                catch
                {
                    throw new Exception("CONNECTION_DATABASE_EXCEPTION");
                }

                return dbConn;
            }



    miércoles, 25 de julio de 2012 21:27
  • La verdad es que me he perdido un poco con la explicación, pero si tu proyecto de negocio hace referencia a 

    microsoft.practices.enterpriselibrary.data

    también deberías añadir esta referencia a tu aplicación winforms.


    Atentamente, Sergio.

    Blog
    Twitter

    jueves, 26 de julio de 2012 11:41
  • Estimado Sergio:

    Ya había probado eso con anterioridad y no funcionó.

    Haber si te lo explico más simple.

    Mira tengo una solución con dos proyectos

    una biblioteca de clases donde una de las clases corresponde al código que te envíe.

    y un proyecto web.

    en este último referencio al proyecto de la biblioteca de clases y ello me funciona sin problemas.

    quito el proyecto web y agrego uno winform.

    referencio en el nuevo proyecto a la biblioteca de clases tal como lo tenía con el web

    y cuando voy a realizar el using en uno de los form no me permite referenciarlo pues me aparece como sino fuera posible

    referenciar del spacename  por que no lo ve.

    Ahora si yo saco del proyecto de libreria de bibliotecas el metodo anterior, si que me permite realizar el using.

    Hay algo en ese método específico que pareciera funcionar solo en web

    ¿La pregunta es porque no permite referenciar esa clase con ese método en winform y en cambio en web lo puedo hacer  sin problema?

    Gracias

    Cordialmente

    Valentín Lozoya Gaete


    jueves, 26 de julio de 2012 14:29