none
Como establecer la cadena de conexión entre una app cliente y un web api RRS feed

  • Pregunta

  • Hola 

    Trabajo con ASP.NET Core 3.1 tengo una web api para conectar una app cliente de escritorio(windows forms) el tema de los tokens ya lo tengo solucionado y funcionando.

    Mi problema es como establecer la cadena de conexión la cual ya la obtengo de acuerdo al tenant que toque en la api, la aplicación cliente trabaja con EF6 la cual tiene su propio DbContext la api tiene su propio DbContext 

    ¿Al obtener la cadena de conexión de la tengo que enviar a la app cliente para que se pueda conectar a su respectiva base de datos, en otras palabras le devuelvo un string con la conexión?

    En mi app cliente hago el llamado a los endpoint de la siguiente manera.

    private void btnAcceso_Click(object sender, EventArgs e)
            {
                //Obtengo el token
                string urlToken = "https://localhost:44365/api/Token/";
                var inquilinoDto = new InquilinoDto()
                {
                    Tenant = Utilidades.Cifrar(Utilidades.LeerRegistro())
                };
    
                string token = UtilidadesWebAPI.SendPostToken<InquilinoDto>(urlToken, inquilinoDto);
    
                var user = txtUsuario.Text;
                var password = txtPassword.Text;
                if (!string.IsNullOrEmpty(user) && !string.IsNullOrEmpty(password))
                {
                    string urlConn = "https://localhost:44365/api/Service/";
                    //Conectarme a la DB
                    UtilidadesWebAPI.SendGetConexion(urlConn, token);
                    if (_saUsuario.Autentificar(user, password))
                    {
                        this.DialogResult = DialogResult.OK;
                        Nombre = user;
                        //_hub.Publish(new BusquedaSelected() {Valor = user});
                    }
                    else
                        this.DialogResult = DialogResult.Abort;
                }
            }

    Por que una vez que se ejecute _saUsuario.Autentificar el ira a su DbContext a persistir contra su db que esta en la nube(la cual se realizara siempre y cuando le envié la cadena de conexión).

    ¿Porque no creo que use el DbContext del web api por que es otro contexto?, y el código del cliente ira a buscar su DbContext a su capa de persistencia.

    ¿Oh tengo que llevar todo lo que tengo implementado en la capa de persistencia del cliente a la web api?

    Salludos!!

     

    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú


    viernes, 10 de julio de 2020 16:58

Todas las respuestas

  • Hola Pedro Ávila, 

      

    Gracias por levantar tu consulta en los foros de MSDN. Entendimos su pregunta y vamos a darle seguimiento para buscar la mejor repuesta pertinente al caso.  

    Cualquier duda referente a productos Microsoft, puedes consultarnos. Es un gusto informarte. 

    Gracias por usar los foros de MSDN.   

    Eric Ruiz

     ____________________________ 

      

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.  

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.   

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft. 

    miércoles, 15 de julio de 2020 14:52
    Moderador