none
Conexion entre capas RRS feed

  • Pregunta

  • buenas, tengo una consulta, tengo un proyecto en donde costa de tres capas, la capa de datos, logica y interfas de usuario que es web,
    y estoy utilizando el ADO entity model,  pero en la capa de acceso a datos declaro el nuevo item de este tipo y defino todo mi model EDM,
    el problema es que cuando agrego la referencia y desde la otra capa del proyecto, donde esta la logica de negocio, hago todo bien, cuando lo implemento en mi webform, me da problema en la conexion y me manda este error.

    The specified named connection is either not found in the configuration, not intended to be used with the EntityClient provider, or not valid.

    gracias.
    Desarrollo de Sistemas
    sábado, 13 de marzo de 2010 5:05

Respuestas

Todas las respuestas

  • Hola.
    seguramente el problema es que no encuentra la cadena de conexión. Vos al crear la capa de datos la conexión está en tu capa de datos, pero cuando intentas ejecutar tu capa web no encuentra la conexión. Seguramente te funcionará si en el web.config de tu capa web agregar la cadena de conexión completa.
    espero te sirva, saludos
    domingo, 14 de marzo de 2010 14:42
  • ok, ya realize esto de de igual forma no da el error, y  si en el mismo archivo cuando instancio utilizo el configurationmanager me da error de un objeto no inicializado....


    no se si sabes donde hay una pagina que explique  bien todo esto.

    gracias

    Desarrollo de Sistemas
    miércoles, 17 de marzo de 2010 2:09
  • Hola Ruben,

    el error que tes está dando puede ser por dos motivos:

    1. No tienes el connection string en la capa web (entiendo que utilizas la capa de datos desde la capa web utilizando la referencia a la dll).
    2. No se están generando los ficheros xml del modelo correctamente y el contexto no es capaz de obtener la definición de las entidades. Si no me equivoco eso se corrigió con el SP1 de Visual Studio 2008.

    Si quieres podemos verlo más en detalle, por si alguna de estas opciones no te solucionan el problema.

    Saludos
    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin
    miércoles, 17 de marzo de 2010 22:04
  • saludos ante todo, ok, ya puse la conexion en el web config, y he realizado la prueba tato con el 2008 SP1 y el 2010 RC, y me da el mismo error te pongo la definicion de la capa de datos donde el app.config esta esto.

    1 Capa llamada capa.logData

    <connectionStrings> <add name="SDbaseEntitiesDC" connectionString="metadata=res://*/SDbaseModel.csdl|res://*/SDbaseModel.ssdl|res://*/SDbaseModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=(local);Initial Catalog=SDbase;User ID=admin;Password=123*1;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> </connectionStrings>

    esto esta en mi app

    2. capa llamada capa.BLL

    despues tengo otra capa donde esta toda la logica (update, select, insert)

    y por ultimo tengo otra capa

    3 . capa llamada Capa.InterfasWeb

    entonces mi capa 3 esta referenciada a la 2 y 1.

    hago todo mi desarrollo bien, pero a la hora de ejecutarlo me manda ese error, que no encuentra la conexion., pero si dejo la definicion en la misma capa 3 si todo me funciona. y defini la conexion, pero no se si la hice bien, normalmente vi como el wizzar la pone y la puse igual y nada.

    no se si me faltara algo.

     

    gracias

     

     


    Desarrollo de Sistemas
    domingo, 21 de marzo de 2010 0:05
  • Hola Rubén,

    Si miras en el designer del model, tiene una serie de constructores que hacen uso del Connection String y lo localizan en el app.config a través de su nombre. Comprueba que ese constructor se instancia con el nombre de Connection String que comentas (SDbaseEntitiesDC).

    Te adjunto una solución de ejemplo (http://cid-77af67c35753916e.skydrive.live.com/self.aspx/P%c3%bablico/Entity%20Framework%20CanaC/Capas.rar) con lo que comentas quieres hacer (si quieres me puedes mandar tu código y lo reviso).

    Si la revisas, verás que hay 3 capas (Data, Business y WebApplication) y se ha copiado el Connection String de Data a WebApplication.


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin
    domingo, 21 de marzo de 2010 12:29
  • ok, voy a revisar y cualquier problema te mando el fuente.

    gracias por tu ayuda.


    Desarrollo de Sistemas
    domingo, 21 de marzo de 2010 17:37
  • ok,  gracias por tu apoyo,  me funciono perfectamente.

     

     


    Desarrollo de Sistemas
    miércoles, 24 de marzo de 2010 1:18