Introducción a Table API de Azure Cosmos DB y Azure Table Storage mediante el SDK de .NETGet started with Azure Cosmos DB Table API and Azure Table storage using the .NET SDK

Sugerencia

El contenido de este artículo se aplica a Azure Table Storage y a Table API de Azure Cosmos DB.The content in this article applies to Azure Table storage and the Azure Cosmos DB Table API. La instancia de Table API de Azure Cosmos DB es una oferta premium que ofrece tablas con rendimiento optimizado, distribución global e índices secundarios automáticos.The Azure Cosmos DB Table API is a premium offering for table storage that offers throughput-optimized tables, global distribution, and automatic secondary indexes.

Table API de Azure Cosmos DB o Azure Table Storage se pueden usar para almacenar datos NoSQL estructurados en la nube y proporcionar un almacén de claves y atributos con un diseño sin esquema.You can use the Azure Cosmos DB Table API or Azure Table storage to store structured NoSQL data in the cloud, providing a key/attribute store with a schema less design. Dado que tanto Table API de Azure Cosmos DB como Table Storage carecen de esquema, es fácil adaptar los datos a medida que evolucionan las necesidades de la aplicación.Because Azure Cosmos DB Table API and Table storage are schema less, it's easy to adapt your data as the needs of your application evolve. Tanto Table API de Azure Cosmos DB como Table Storage se pueden usar para almacenar conjuntos de datos flexibles, como datos de usuarios para aplicaciones web, libretas de direcciones, información de dispositivos u otros tipos de metadatos que el servicio requiera.You can use Azure Cosmos DB Table API or the Table storage to store flexible datasets such as user data for web applications, address books, device information, or other types of metadata your service requires.

Este tutorial describe un ejemplo que muestra cómo usar Microsoft Azure CosmosDB Table Library for .NET con escenarios de almacenamiento de Table API de Azure Cosmos DB y Azure Table Storage.This tutorial describes a sample that shows you how to use the Microsoft Azure Cosmos DB Table Library for .NET with Azure Cosmo DB Table API and Azure Table storage scenarios. Debe usar la conexión específica del servicio de Azure.You must use the connection specific to the Azure service. Estos escenarios se describen mediante ejemplos de C# que ilustran cómo crear tablas, insertar y actualizar datos, consultar los datos y eliminar las tablas.These scenarios are explored using C# examples that illustrate how to create tables, insert/ update data, query data and delete the tables.

Requisitos previosPrerequisites

Necesitará lo siguiente para completar este ejemplo correctamente:You need the following to complete this sample successfully:

Creación de una cuenta de Table API de Azure Cosmos DBCreate an Azure Cosmos DB Table API account

  1. En una nueva ventana del explorador, inicie sesión en Azure Portal.In a new browser window, sign in to the Azure portal.

  2. En el panel de navegación izquierdo, seleccione Crear un recurso.In the left navigation pane, select Create a resource. Seleccione Bases de datos y, luego, Azure Cosmos DB.Select Databases and then select Azure Cosmos DB.

    Captura de pantalla de Azure Portal en la que se resaltan Más servicios y Azure Cosmos DB

  3. En la página Crear una cuenta de Azure Cosmos DB, especifique la configuración de la nueva cuenta de Azure Cosmos DB:On the Create Azure Cosmos DB Account page, enter the settings for the new Azure Cosmos DB account:

    ConfiguraciónSetting ValorValue DESCRIPCIÓNDescription
    SubscriptionSubscription Su suscripciónYour subscription Seleccione la suscripción de Azure que quiere usar para esta cuenta de Azure Cosmos DB.Select the Azure subscription that you want to use for this Azure Cosmos DB account.
    Grupo de recursosResource Group Crear nuevoCreate new

    A continuación, escriba el mismo nombre único que se proporcionó en el identificadorThen enter the same unique name as provided in ID
    Seleccione Crear nuevo.Select Create new. Luego, escriba un nombre nuevo de grupo de recursos para la cuenta.Then enter a new resource group name for your account. Para simplificar, utilice el mismo nombre del identificador.For simplicity, use the same name as your ID.
    Nombre de cuentaAccount Name Escriba un nombre único.Enter a unique name Escriba un nombre único para identificar la cuenta de Azure Cosmos DB.Enter a unique name to identify your Azure Cosmos DB account.

    El identificador solo debe contener letras minúsculas, números y el carácter de guion (-).The ID can use only lowercase letters, numbers, and the hyphen (-) character. El nombre debe tener entre 3 y 31 caracteres.It must be between 3 and 31 characters long.
    APIAPI tabla de AzureAzure Table La API determina el tipo de cuenta que se va a crear.The API determines the type of account to create. Azure Cosmos DB proporciona cinco API: Core(SQL) para bases de datos de documentos, Gremlin para bases de datos de grafos, MongoDB para bases de datos de documentos, Azure Table y Cassandra.Azure Cosmos DB provides five APIs: Core(SQL) for document databases, Gremlin for graph databases, MongoDB for document databases, Azure Table, and Cassandra. Actualmente, debe crear una cuenta independiente para cada API.Currently, you must create a separate account for each API.

    Seleccione Tabla de Azure, ya que en este inicio rápido va a crear una tabla que funciona con Table API.Select Azure Table because in this quickstart you're creating a table that works with the Table API.

    Más información acerca de Table API.Learn more about the Table API.
    LocationLocation Seleccionar la región más cercana a los usuariosSelect the region closest to your users Seleccione una ubicación geográfica para hospedar la cuenta de Azure Cosmos DB.Select a geographic location to host your Azure Cosmos DB account. Use la ubicación más cercana a los usuarios para proporcionarles el acceso más rápido a los datos.Use the location that's closest to your users to give them the fastest access to data.

    En las opciones Redundancia geográfica y Escrituras en varias regiones puede dejar sus valores predeterminados (Deshabilitar) para evitar gastos de RU adicionales.You can leave the Geo-Redundancy and Multi-region Writes options at their default values (Disable) to avoid additional RU charges. Puede omitir las secciones Red y Etiquetas.You can skip the Network and Tags sections.

  4. Seleccione Revisar y crear.Select Review+Create. Una vez completada la validación, seleccione Crear para crear la cuenta.After the validation is complete, select Create to create the account.

    Página de la nueva cuenta de Azure Cosmos DB

  5. La operación de creación de la cuenta tarda unos minutos.It takes a few minutes to create the account. Verá el mensaje La implementación está en curso.You'll see a message that states Your deployment is underway. Espere hasta que finalice implementación y seleccione Ir al recurso.Wait for the deployment to finish and then select Go to resource.

    El panel de notificaciones de Azure Portal

Creación de un proyecto de consola de .NETCreate a .NET console project

En Visual Studio, cree una nueva aplicación de consola de .NET.In Visual Studio, create a new .NET console application. Los siguientes pasos muestran cómo crear una aplicación de consola en Visual Studio 2019.The following steps show you how to create a console application in Visual Studio 2019. Azure Cosmos DB Table Library se puede usar en cualquier tipo de aplicación. NET, incluidos cualquier servicio en la nube o aplicación web de Azure, y aplicaciones de escritorio o móviles.You can use the Azure Cosmos DB Table Library in any type of .NET application, including an Azure cloud service or web app, and desktop and mobile applications. En esta guía, usamos una aplicación de consola para hacerlo más sencillo.In this guide, we use a console application for simplicity.

  1. Seleccione Archivo > Nuevo > Proyecto.Select File > New > Project.

  2. Elija Aplicación de consola (.NET Core) y, a continuación, seleccione Siguiente.Choose Console App (.NET Core), and then select Next.

  3. En el campo Nombre del proyecto, escriba un nombre para la aplicación, como CosmosTableSamples.In the Project name field, enter a name for your application, such as CosmosTableSamples. (Puede proporcionar un nombre diferente para adaptarse a sus necesidades).(You can provide a different name as needed.)

  4. Seleccione Crear.Select Create.

Todos los ejemplos de código de este ejemplo se pueden agregar al método Main() del archivo Program.cs de la aplicación de consola.All code examples in this sample can be added to the Main() method of your console application's Program.cs file.

Instalación del paquete NuGet requeridoInstall the required NuGet package

Para obtener el paquete NuGet, siga estos pasos:To obtain the NuGet package, follow these steps:

  1. Haga clic con el botón derecho en el proyecto, en el Explorador de soluciones, y elija Administrar paquetes NuGet.Right-click your project in Solution Explorer and choose Manage NuGet Packages.

  2. Busque en línea Microsoft.Azure.Cosmos.Table, Microsoft.Extensions.Configuration, Microsoft.Extensions.Configuration.Json, Microsoft.Extensions.Configuration.Binder y seleccione Instalar para instalar Microsoft Azure Cosmos DB Table Library.Search online for Microsoft.Azure.Cosmos.Table, Microsoft.Extensions.Configuration, Microsoft.Extensions.Configuration.Json, Microsoft.Extensions.Configuration.Binder and select Install to install the Microsoft Azure Cosmos DB Table Library.

Configuración de la cadena de conexión de almacenamiento.Configure your storage connection string

  1. Desde Azure Portal, vaya a su cuenta de Azure Cosmos o la cuenta de Table Storage.From the Azure portal, navigate to your Azure Cosmos account or the Table Storage account.

  2. Abra el panel Cadena de conexión o Claves de acceso.Open the Connection String or Access keys pane. Use el botón de copia en el lado derecho de la ventana para copiar la CADENA DE CONEXIÓN PRINCIPAL.Use the copy button on the right side of the window to copy the PRIMARY CONNECTION STRING.

    Visualización y copia de la cadena de conexión principal (PRIMARY CONNECTION STRING) en el panel Cadena de conexión

  3. Para configurar la cadena de conexión, desde Visual Studio haga clic con el botón derecho en el proyecto CosmosTableSamples.To configure your connection string, from visual studio right click on your project CosmosTableSamples.

  4. Seleccione Agregar y, a continuación, Nuevo elemento.Select Add and then New Item. Cree un nuevo archivo Settings.json con el tipo de archivo como Configuración de JSON de TypeScript.Create a new file Settings.json with file type as TypeScript JSON Configuration File.

  5. Reemplace el código en el archivo Settings.json por el código siguiente y asigne la cadena de conexión principal:Replace the code in Settings.json file with the following code and assign your primary connection string:

    {
    "StorageConnectionString": <Primary connection string of your Azure Cosmos DB account>
    }
    
  6. Haga clic con el botón derecho en el proyecto CosmosTableSamples.Right click on your project CosmosTableSamples. Seleccione Agregar, Nuevo elemento y agregue una clase denominada AppSettings.cs.Select Add, New Item and add a class named AppSettings.cs.

  7. Agregue el siguiente código al archivo AppSettings.cs.Add the following code to the AppSettings.cs file. Este archivo lee la cadena de conexión del archivo Settings.json y la asigna al parámetro de configuración:This file reads the connection string from Settings.json file and assigns it to the configuration parameter:

    namespace CosmosTableSamples
    {
     using Microsoft.Extensions.Configuration;
     public class AppSettings
     {
         public string StorageConnectionString { get; set; }
         public static AppSettings LoadAppSettings()
         {
             IConfigurationRoot configRoot = new ConfigurationBuilder()
                 .AddJsonFile("Settings.json")
                 .Build();
             AppSettings appSettings = configRoot.Get<AppSettings>();
             return appSettings;
         }
     }
    }
    

Análisis y validación de los detalles de conexiónParse and validate the connection details

  1. Haga clic con el botón derecho en el proyecto CosmosTableSamples.Right click on your project CosmosTableSamples. Seleccione Agregar, Nuevo elemento y agregue una clase denominada Common.cs.Select Add, New Item and add a class named Common.cs. Escribirá código para validar los detalles de conexión y crear una tabla dentro de esta clase.You will write code to validate the connection details and create a table within this class.

  2. Defina un método CreateStorageAccountFromConnectionString tal como se muestra a continuación.Define a method CreateStorageAccountFromConnectionString as shown below. Este método analizará los detalles de la cadena de conexión y comprobará que el nombre de la cuenta y los detalles de la clave de cuenta proporcionados en el archivo "Settings.json" son válidos.This method will parse the connection string details and validate that the account name and account key details provided in the "Settings.json" file are valid.

using System;

namespace CosmosTableSamples
{
   using System.Threading.Tasks;
   using Microsoft.Azure.Cosmos.Table;
   using Microsoft.Azure.Documents;

   public class Common
   {
       public static CloudStorageAccount CreateStorageAccountFromConnectionString(string storageConnectionString)
       {
           CloudStorageAccount storageAccount;
           try
           {
               storageAccount = CloudStorageAccount.Parse(storageConnectionString);
           }
           catch (FormatException)
           {
               Console.WriteLine("Invalid storage account information provided. Please confirm the AccountName and AccountKey are valid in the app.config file - then restart the application.");
               throw;
           }
           catch (ArgumentException)
           {
               Console.WriteLine("Invalid storage account information provided. Please confirm the AccountName and AccountKey are valid in the app.config file - then restart the sample.");
               Console.ReadLine();
               throw;
           }

           return storageAccount;
       }
   }
}

Creación de una tablaCreate a Table

La clase CloudTableClient le permite recuperar las tablas y las entidades almacenadas en Almacenamiento de tablas.The CloudTableClient class enables you to retrieve tables and entities stored in Table storage. Dado que no hay ninguna tabla en la cuenta de Table API de Cosmos DB, vamos a agregar el método CreateTableAsync a la clase Common.cs para crear una tabla:Because we don’t have any tables in the Cosmos DB Table API account, let’s add the CreateTableAsync method to the Common.cs class to create a table:

public static async Task<CloudTable> CreateTableAsync(string tableName)
  {
    string storageConnectionString = AppSettings.LoadAppSettings().StorageConnectionString;

    // Retrieve storage account information from connection string.
    CloudStorageAccount storageAccount = CreateStorageAccountFromConnectionString(storageConnectionString);

    // Create a table client for interacting with the table service
    CloudTableClient tableClient = storageAccount.CreateCloudTableClient(new TableClientConfiguration());

    Console.WriteLine("Create a Table for the demo");

    // Create a table client for interacting with the table service 
    CloudTable table = tableClient.GetTableReference(tableName);
    if (await table.CreateIfNotExistsAsync())
    {
      Console.WriteLine("Created Table named: {0}", tableName);
    }
    else
    {
      Console.WriteLine("Table {0} already exists", tableName);
    }

    Console.WriteLine();
    return table;
}

Definición de la entidadDefine the entity

Las entidades se asignan a objetos C# utilizando una clase personalizada derivada de TableEntity.Entities map to C# objects by using a custom class derived from TableEntity. Para agregar una entidad a una tabla, cree una clase que defina las propiedades de la entidad.To add an entity to a table, create a class that defines the properties of your entity.

Haga clic con el botón derecho en el proyecto CosmosTableSamples.Right click on your project CosmosTableSamples. Seleccione Agregar, Nueva carpeta y asígnele el nombre Model.Select Add, New Folder and name it as Model. En la carpeta Model, agregue una clase llamada CustomerEntity.cs y agréguele el código siguiente.Within the Model folder add a class named CustomerEntity.cs and add the following code to it.

namespace CosmosTableSamples.Model
{
    using Microsoft.Azure.Cosmos.Table;
    public class CustomerEntity : TableEntity
    {
        public CustomerEntity()
        {
        }

        public CustomerEntity(string lastName, string firstName)
        {
            PartitionKey = lastName;
            RowKey = firstName;
        }

        public string Email { get; set; }
        public string PhoneNumber { get; set; }
    }
}

El código define una clase de entidad que utiliza el nombre de pila del cliente como clave de fila y el apellido como clave de partición.This code defines an entity class that uses the customer's first name as the row key and last name as the partition key. En conjunto, las claves de partición y de fila de una entidad la identifican inequívocamente en la tabla.Together, an entity's partition and row key uniquely identify it in the table. Las entidades con la misma clave de partición pueden consultarse más rápidamente que aquellas con diferentes claves de partición, pero el uso de claves de partición diversas permite una mayor escalabilidad de las operaciones paralelas.Entities with the same partition key can be queried faster than entities with different partition keys but using diverse partition keys allows for greater scalability of parallel operations. Las entidades que se almacenan en tablas deben ser de un tipo compatible, por ejemplo, derivadas de la clase TableEntity.Entities to be stored in tables must be of a supported type, for example derived from the TableEntity class. Las propiedades de entidad que desee almacenar en una tabla deben ser propiedades públicas del tipo, y deben admitir que se obtengan y establezcan valores.Entity properties you'd like to store in a table must be public properties of the type, and support both getting and setting of values. Además, el tipo de entidad debe exponer un constructor sin parámetros.Also, your entity type must expose a parameter-less constructor.

Inserción o combinación de la entidadInsert or merge an entity

En el ejemplo de código siguiente se crea un objeto de entidad y se agrega a la tabla.The following code example creates an entity object and adds it to the table. El método InsertOrMerge dentro de la clase TableOperation se utiliza para insertar o combinar una entidad.The InsertOrMerge method within the TableOperation class is used to insert or merge an entity. Se llama al método CloudTable.ExecuteAsync para ejecutar la operación.The CloudTable.ExecuteAsync method is called to execute the operation.

Haga clic con el botón derecho en el proyecto CosmosTableSamples.Right click on your project CosmosTableSamples. Seleccione Agregar, Nuevo elemento y agregue una clase denominada SamplesUtils.cs.Select Add, New Item and add a class named SamplesUtils.cs. Esta clase almacena todo el código necesario para realizar operaciones CRUD en las entidades.This class stores all the code required to perform CRUD operations on the entities.

 public static async Task<CustomerEntity> InsertOrMergeEntityAsync(CloudTable table, CustomerEntity entity)
 {
     if (entity == null)
     {
         throw new ArgumentNullException("entity");
     }
     try
     {
         // Create the InsertOrReplace table operation
         TableOperation insertOrMergeOperation = TableOperation.InsertOrMerge(entity);

         // Execute the operation.
         TableResult result = await table.ExecuteAsync(insertOrMergeOperation);
         CustomerEntity insertedCustomer = result.Result as CustomerEntity;

         // Get the request units consumed by the current operation. RequestCharge of a TableResult is only applied to Azure Cosmos DB
         if (result.RequestCharge.HasValue)
         {
             Console.WriteLine("Request Charge of InsertOrMerge Operation: " + result.RequestCharge);
         }

         return insertedCustomer;
     }
     catch (StorageException e)
     {
         Console.WriteLine(e.Message);
         Console.ReadLine();
         throw;
     }
 }

Obtención de una entidad de una particiónGet an entity from a partition

Puede obtener la entidad de una partición mediante el método Retrieve de la clase TableOperation.You can get entity from a partition by using the Retrieve method under the TableOperation class. En el ejemplo de código siguiente se obtiene la clave de fila de la clave de partición, el correo electrónico y el número de teléfono de una entidad de cliente.The following code example gets the partition key row key, email and phone number of a customer entity. Este ejemplo también imprime las unidades de solicitud utilizadas para consultar la entidad.This example also prints out the request units consumed to query for the entity. Para consultar una entidad, anexe el código siguiente al archivo SamplesUtils.cs:To query for an entity, append the following code to SamplesUtils.cs file:

public static async Task<CustomerEntity> RetrieveEntityUsingPointQueryAsync(CloudTable table, string partitionKey, string rowKey)
    {
      try
      {
        TableOperation retrieveOperation = TableOperation.Retrieve<CustomerEntity>(partitionKey, rowKey);
        TableResult result = await table.ExecuteAsync(retrieveOperation);
        CustomerEntity customer = result.Result as CustomerEntity;
        if (customer != null)
        {
          Console.WriteLine("\t{0}\t{1}\t{2}\t{3}", customer.PartitionKey, customer.RowKey, customer.Email, customer.PhoneNumber);
        }

        // Get the request units consumed by the current operation. RequestCharge of a TableResult is only applied to Azure CosmoS DB 
        if (result.RequestCharge.HasValue)
        {
           Console.WriteLine("Request Charge of Retrieve Operation: " + result.RequestCharge);
        }

        return customer;
        }
        catch (StorageException e)
        {
           Console.WriteLine(e.Message);
           Console.ReadLine();
           throw;
        }
    }

Eliminación de una entidadDelete an entity

Puede eliminar fácilmente una entidad una vez recuperada utilizando el mismo patrón mostrado para actualizar una entidad.You can easily delete an entity after you have retrieved it by using the same pattern shown for updating an entity. El código siguiente recupera y elimina una entidad de cliente.The following code retrieves and deletes a customer entity. Para eliminar una entidad, anexe el código siguiente al archivo SamplesUtils.cs:To delete an entity, append the following code to SamplesUtils.cs file:

public static async Task DeleteEntityAsync(CloudTable table, CustomerEntity deleteEntity)
   {
     try
     {
        if (deleteEntity == null)
     {
        throw new ArgumentNullException("deleteEntity");
     }

    TableOperation deleteOperation = TableOperation.Delete(deleteEntity);
    TableResult result = await table.ExecuteAsync(deleteOperation);

    // Get the request units consumed by the current operation. RequestCharge of a TableResult is only applied to Azure CosmoS DB 
    if (result.RequestCharge.HasValue)
    {
       Console.WriteLine("Request Charge of Delete Operation: " + result.RequestCharge);
    }

    }
    catch (StorageException e)
    {
        Console.WriteLine(e.Message);
        Console.ReadLine();
        throw;
    }
}

Ejecución de operaciones CRUD en datos de ejemploExecute the CRUD operations on sample data

Después de definir los métodos para crear una tabla e insertar o combinar entidades, ejecute estos métodos en los datos de ejemplo.After you define the methods to create table, insert or merge entities, run these methods on the sample data. Para ello, haga clic con el botón derecho en el proyecto CosmosTableSamples.To do so, right click on your project CosmosTableSamples. Seleccione Agregar, Nuevo elemento, agregue una clase denominada BasicSamples.cs y agréguele el código siguiente.Select Add, New Item and add a class named BasicSamples.cs and add the following code to it. Este código crea una tabla y le agrega las entidades.This code creates a table, adds entities to it. Si desea eliminar la entidad y la tabla al final del proyecto, quite los comentarios de los métodos table.DeleteIfExistsAsync() y SamplesUtils.DeleteEntityAsync(table, customer) del código siguiente:If you wish to delete the entity and table at the end of the project remove the comments from table.DeleteIfExistsAsync() and SamplesUtils.DeleteEntityAsync(table, customer) methods from the following code:

using System;
namespace CosmosTableSamples
{
    using System.Threading.Tasks;
    using Microsoft.Azure.Cosmos.Table;
    using Model;

    class BasicSamples
    {
        public async Task RunSamples()
        {
            Console.WriteLine("Azure Cosmos DB Table - Basic Samples\n");
            Console.WriteLine();

            string tableName = "demo" + Guid.NewGuid().ToString().Substring(0, 5);

            // Create or reference an existing table
            CloudTable table = await Common.CreateTableAsync(tableName);

            try
            {
                // Demonstrate basic CRUD functionality 
                await BasicDataOperationsAsync(table);
            }
            finally
            {
                // Delete the table
                // await table.DeleteIfExistsAsync();
            }
        }

        private static async Task BasicDataOperationsAsync(CloudTable table)
        {
            // Create an instance of a customer entity. See the Model\CustomerEntity.cs for a description of the entity.
            CustomerEntity customer = new CustomerEntity("Harp", "Walter")
            {
                Email = "Walter@contoso.com",
                PhoneNumber = "425-555-0101"
            };

            // Demonstrate how to insert the entity
            Console.WriteLine("Insert an Entity.");
            customer = await SamplesUtils.InsertOrMergeEntityAsync(table, customer);

            // Demonstrate how to Update the entity by changing the phone number
            Console.WriteLine("Update an existing Entity using the InsertOrMerge Upsert Operation.");
            customer.PhoneNumber = "425-555-0105";
            await SamplesUtils.InsertOrMergeEntityAsync(table, customer);
            Console.WriteLine();

            // Demonstrate how to Read the updated entity using a point query 
            Console.WriteLine("Reading the updated Entity.");
            customer = await SamplesUtils.RetrieveEntityUsingPointQueryAsync(table, "Harp", "Walter");
            Console.WriteLine();

            // Demonstrate how to Delete an entity
            //Console.WriteLine("Delete the entity. ");
            //await SamplesUtils.DeleteEntityAsync(table, customer);
            //Console.WriteLine();
        }
    }
}

El código anterior crea una tabla que empieza por "demo" y el GUID generado se anexa al nombre de la tabla.The previous code creates a table that starts with “demo” and the generated GUID is appended to the table name. A continuación, agrega una entidad de cliente con nombre y apellido como "Walter Harp" y más tarde actualiza el número de teléfono de este usuario.It then adds a customer entity with first and last name as “Harp Walter” and later updates the phone number of this user.

En este tutorial, ha compilado código para realizar operaciones CRUD básicas en los datos almacenados en la cuenta de Table API.In this tutorial, you built code to perform basic CRUD operations on the data stored in Table API account. También puede realizar operaciones avanzadas, como insertar datos por lotes, consultar todos los datos de una partición, consultar un intervalo de datos de una partición y enumerar tablas en la cuenta cuyos nombres comiencen por el prefijo especificado.You can also perform advanced operations such as – batch inserting data, query all the data within a partition, query a range of data within a partition, Lists tables in the account whose names begin with the specified prefix. Puede descargar el ejemplo completo del repositorio de GitHub azure-cosmos-table-dotnet-core-getting-started.You can download the complete sample form azure-cosmos-table-dotnet-core-getting-started GitHub repository. La clase AdvancedSamples.cs tiene más operaciones que puede realizar en los datos.The AdvancedSamples.cs class has more operations that you can perform on the data.

Ejecución del proyectoRun the project

En el proyecto CosmosTableSamples.From your project CosmosTableSamples. Abra la clase denominada Program.CS y agréguele el siguiente código para llamar a BasicSamples cuando se ejecute el proyecto.Open the class named Program.cs and add the following code to it for calling BasicSamples when the project runs.

using System;

namespace CosmosTableSamples
{
    class Program
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Azure Cosmos Table Samples");
            BasicSamples basicSamples = new BasicSamples();
            basicSamples.RunSamples().Wait();
           
            Console.WriteLine();
            Console.WriteLine("Press any key to exit");
            Console.Read();
        }
    }
}

Ahora, compile la solución y presione F5 para ejecutar el proyecto.Now build the solution and press F5 to run the project. Cuando se ejecute el proyecto, verá la siguiente salida en el símbolo del sistema:When the project is run, you will see the following output in the command prompt:

Salida del símbolo del sistema

Si recibe un error que indica que no se encuentra el archivo Settings.json al ejecutar el proyecto, puede resolverlo agregando la siguiente entrada XML a la configuración del proyecto.If you receive an error that says Settings.json file can’t be found when running the project, you can resolve it by adding the following XML entry to the project settings. Haga clic con el botón derecho en CosmosTableSamples, seleccione Editar CosmosTableSamples.csproj y agregue el itemGroup siguiente:Right click on CosmosTableSamples, select Edit CosmosTableSamples.csproj and add the following itemGroup:

  <ItemGroup>
    <None Update="Settings.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
  </ItemGroup>

Ahora puede iniciar sesión en Azure Portal y comprobar que los datos existen en la tabla.Now you can sign into the Azure portal and verify that the data exists in the table.

Resultados en el portal

Pasos siguientesNext steps

Ahora puede pasar al siguiente tutorial y aprender a migrar datos a la cuenta de Table API de Azure Cosmos DB.You can now proceed to the next tutorial and learn how to migrate data to Azure Cosmos DB Table API account.