es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Conexión de D365 FO desde una aplicación de Windows Forms en C#

Necesito establecer una conexión desde una aplicación de Windows Forms en C# a un entorno local de D365 FO.

Hasta ahora, he creado una cuenta en Azure y registrado una aplicación, por lo que actualmente tengo el “ID de la aplicación (cliente)”, el “ID del directorio (inquilino)” y he creado un Secreto del Cliente.

¿Qué debo hacer para conectarme a D365 FO utilizando la API REST del paquete de gestión de datos?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para conectarse a D365 FO utilizando la API REST del paquete de gestión de datos desde una aplicación de Windows Forms en C#, debe seguir los siguientes pasos:

    1. En primer lugar, debe instalar el paquete de SDK de Dynamics 365 para Visual Studio.
    2. Cree una aplicación de Windows Forms en C# en Visual Studio y agregue los paquetes de NuGet requeridos, como Microsoft.IdentityModel.Clients.ActiveDirectory y Microsoft.Rest.ClientRuntime.

    3. En el Portal de Azure, busque su instancia de D365 FO y haga clic en la pestaña “Endpoints”. Copie la URL del “Endpoint de Gestión de Datos”.

    4. Utilice el ID de la aplicación (cliente), el ID del directorio (inquilino) y el secreto del cliente que creó anteriormente para autenticar su aplicación llamando al endpoint de token de Azure Active Directory. Puede utilizar el siguiente código:

    var authContext = new AuthenticationContext("https://login.windows.net/" + tenantId);
    var credential = new ClientCredential(applicationId, clientSecret);
    var result = await authContext.AcquireTokenAsync("https://<su-instancia-d365-fo>.sandbox.ax.dynamics.com", credential);
    

    Reemplace <su-instancia-d365-fo> por el nombre de su instancia.

    1. Con el token de acceso adquirido, puede crear una instancia de la clase DataManagementClient, pasando la URL base del endpoint de gestión de datos y el token de acceso obtenido en el paso anterior:
    var credentials = new TokenCredentials(result.AccessToken);
    var client = new DataManagementClient(new Uri("https://<su-instancia-d365-fo>.sandbox.ax.dynamics.com/data"), credentials);
    
    1. Luego, puede utilizar la clase DataManagementClient para llamar a las diferentes operaciones disponibles en la API REST del paquete de gestión de datos, como la creación o importación de paquetes de datos.

    Nota: También debe asegurarse de que su aplicación de Windows Forms tenga los permisos y roles necesarios asignados en D365 FO para acceder a las entidades y operaciones requeridas.

Comments are closed.