Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este inicio rápido se muestra cómo usar el SDK de Microsoft Dataverse para .NET en una aplicación de consola de C# mínima. Conéctese al servicio Organización mediante la ServiceClient clase y ejecute una solicitud de servicio web para comprobar el acceso a los datos empresariales del entorno.
La aplicación llama al método IOrganizationService.Execute y pasa una instancia de la WhoAmIRequest clase . El resultado devuelto por el servicio web es un valor WhoAmIResponse.UserId rellenado que es el identificador único de la cuenta de usuario del Dataverse sistema.
Nota
En este ejemplo de inicio rápido no se incluye el control de excepciones para mayor brevedad. Este inicio rápido es un ejemplo de código mínimo de lo que necesita para conectarse y usar el SDK para .NET.
Puede obtener el ejemplo de código completo de GitHub GetStarted. Consulte el LÉAME del programa para más detalles.
Requisitos previos
- Visual Studio (2026 o posterior)
- Conexión a Internet
- Credenciales de inicio de sesión para una cuenta de usuario del sistema de Dataverse para el entorno de destino
- Dirección URL al entorno de Dataverse con el que quiere conectarse
- Comprensión básica de lenguaje Visual C#
Lea la siguiente información importante sobre el uso de una cadena de conexión o la autenticación de nombre de usuario/contraseña en el código de la aplicación.
Importante
Microsoft recomienda utilizar el flujo de autenticación más seguro disponible. El flujo de autenticación descrito en este artículo requiere un alto grado de confianza en la aplicación y conlleva riesgos que no están presentes en otros flujos. Solo debe usar este flujo cuando otros flujos más seguros, como las identidades administradas, no sean viables.
Creación de un proyecto de aplicación de consola de .NET en Visual Studio
Crea un nuevo proyecto. Para este proyecto, use Visual Studio 2026.
Elija la plantilla de proyecto .NET aplicación de consola.
Seleccione Siguiente.
Establezca el nombre del proyecto y la ubicación.
Seleccione Siguiente.
Seleccione .NET 10.0 (Soporte técnico a largo plazo) como Marco.
Selecciona Crear.
En el Explorador de soluciones haga clic con el botón secundario en el proyecto que ha creado y seleccione Administrar paquetes de NuGet... en el menú contextual.
Busque la versión del paquete NuGet
Microsoft.PowerPlatform.Dataverse.Clientmás reciente e instálelo.
Nota
Se le pedirá que seleccione Aplicar a los cambios en vista previa y, a continuación, seleccione Acepto en el cuadro de diálogo Aceptación de licencia .
Adición de código para el SDK de Dataverse para .NET solicitud
En Explorador de soluciones, haga doble clic
Program.cspara editar el archivo. Reemplace el contenido del archivo por el código siguiente.using Microsoft.Crm.Sdk.Messages; using Microsoft.PowerPlatform.Dataverse.Client; using Microsoft.Xrm.Sdk; /// <summary> /// Public client authentication followed by a web service request. /// Use of username and password for authentication. /// </summary> /// <remarks>This sample uses a standard app registration used for /// demonstrating SDK code samples.</remarks> class Program { // TODO Enter your Dataverse environment's URL and logon info. static string url = "https://myorg.crm.dynamics.com"; static string userName = "someone@myorg.onmicrosoft.com"; static string password = "password"; // This service connection string uses the info provided above. // The standard AppId and RedirectUri are provided for sample code demonstration only. static string connectionString = $@" AuthType = OAuth; Url = {url}; UserName = {userName}; Password = {password}; AppId = 51f81489-12ee-4a9e-aaae-a2591f45987d; RedirectUri = http://localhost; LoginPrompt=Auto; RequireNewInstance = True"; static void Main() { // ServiceClient class implements IOrganizationService interface IOrganizationService service = new ServiceClient(connectionString); var response = (WhoAmIResponse)service.Execute(new WhoAmIRequest()); Console.WriteLine($"User ID is {response.UserId}."); // Pause the console so it does not close. Console.WriteLine("Press the <Enter> key to exit."); Console.ReadLine(); } }Cambie los valores de
url,userNameypasswordcomo lo indica el comentario del código// TODO.Nota
Puede encontrar la URL de su entorno en la aplicación web heredada en Configuración > Personalización > Recursos para desarrolladores o en la Configuración de Power Apps (icono del engranaje) >Recursos para desarrolladores.
Aunque este ejemplo de código coloca la información de nombre de usuario y contraseña en el código por motivos de simplicidad, otros ejemplos de código usan el enfoque más recomendado para solicitar esa información o almacenarla en un archivo o
appsettings.jsonindependienteApp.config.Puede encontrar los valores admitidos para AuthType enumerados en Parámetros de cadena de conexión.
Ejecutar el programa
Pulse F5 para ejecutar el programa. La salida debería tener un aspecto similar al ejemplo siguiente:
User ID is 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
Press any key to exit.
Utilizar los métodos de la interfaz IOrganizationService
Dataverse.Client.ServiceClient que usa este programa implementa la interfaz IOrganizationService, que incluye el método Execute.
Para comprender mejor la IOrganizationService interfaz, pruebe los pasos siguientes:
Vaya al artículo de referencia de la clase WhoAmIRequest.
Copie el método de ejemplo de ese artículo. Tiene este aspecto:
/// <summary> /// Outputs the data returned from the WhoAmI message /// </summary> /// <param name="service">Authenticated client implementing the IOrganizationService interface</param> static void WhoAmIExample(IOrganizationService service) { var response = (WhoAmIResponse)service.Execute(new WhoAmIRequest()); Console.WriteLine($"OrganizationId:{response.OrganizationId}"); Console.WriteLine($"BusinessUnitId:{response.BusinessUnitId}"); Console.WriteLine($"UserId:{response.UserId}"); }Observe que acepta una instancia de servicio
IOrganizationServicecomo parámetro.Pegue este
WhoAmIExamplemétodo debajo del método en elMainprograma.Reemplace el método
Mainen su programa con esto:static void Main() { //ServiceClient implements IOrganizationService interface IOrganizationService service = new ServiceClient(connectionString); WhoAmIExample(service: service); // Pause the console so it does not close. Console.WriteLine("Press the <Enter> key to exit."); Console.ReadLine(); }Vuelva a ejecutar el ejemplo. Deberías ver algo parecido a lo siguiente:
OrganizationId:00aa00aa-bb11-cc22-dd33-44ee44ee44ee BusinessUnitId:11bb11bb-cc22-dd33-ee44-55ff55ff55ff UserId:22cc22cc-dd33-ee44-ff55-66aa66aa66aa Press the <Enter> key to exit.
Pasos siguientes
Ahora que tiene un programa de consola simple que se conecta a Dataverse, use este proyecto para probar otros métodos y mensajes. Puede utilizar este proyecto de aplicación de consola de inicio rápido para realizar pruebas ad-hoc.
Intentar utilizar los métodos de la interfaz IOrganizationService
Propina
En la documentación, puede encontrar muchos métodos de ejemplo como este WhoAmIExample que aceptan un IOrganizationService service parámetro.
Pruebe los ejemplos de estos métodos IOrganizationService:
Probar otros mensajes
Puede encontrar otros mensajes que puede invocar mediante el método Execute en estos espacios de nombres:
Aprender a trabajar con datos de registro
Los siguientes artículos explican cómo trabajar con datos profesionales en tablas de Dataverse:
- Operaciones de clase de la entidad con SDK para .NET
- Crear filas de tabla con SDK para .NET
- Recuperar una fila de tabla usando SDK para .NET
- Actualizar y eliminar filas de tablas usando SDK para .NET
- Asociar y anular la asociación de filas de tabla mediante la SDK para .NET
Explorar nuestros ejemplos de código
Puede encontrar el código de muestra del SDK para .NET en nuestro repositorio de GitHub en PowerApps-Samples/dataverse/orgsvc.
Utilizar extensiones de ServiceClient
Además de implementar la interfaz IOrganizationService, ServiceClient ofrece métodos de extensión más allá de los métodos principales definidos por IOrganizationService y la capacidad de habilitar el registro con ILogger.
Más información sobre el uso de ServiceClient