Muy buen contenido, excelente base para aplicar en los proyectos diarios.
Introducción al curso
Plataforma como Servicio (PaaS): Conceptos y Aplicaciones Prácticas
Configuración de Entornos de Desarrollo con Visual Studio y Code
Almacenamiento
Instalación de Visual Studio Code en cualquier SO
Tipos de Almacenamiento en la Nube con .NET Core
Creación y configuración de cuentas de almacenamiento en la nube
Instalación y uso del Explorador de Almacenamiento en Azure
Protección de Cadenas de Conexión en Aplicaciones .NET Console
Configuración de Proyectos con Paquetes Microsoft en Visual Studio
Conexión y gestión de contenedores en Azure Blob Storage
Subir imágenes a un contenedor en la nube con C#
Agregar File Storage de Azure en Windows paso a paso
Configuración de File Storage en Linux paso a paso
Configurar File Storage en MacOS
Table Storage
Uso de Cosmos DB en Aplicaciones con Visual Studio Code
Conexión y Creación de Tablas en Azure Cosmos DB con C#
Creación de Entidades y Operaciones CRUD en Tablas Cosmos DB
Operaciones CRUD en Azure Table Storage con C#
Creación de colas en Azure Storage con Visual Studio Code
Creación y Gestión de Colas en Aplicaciones de Almacenamiento
Manejo de Colas y Almacenamiento en Proyectos de Software
Automatización de Procesos con Archivos en Blog Historias
Cierre
Gestión de Archivos y Bases de Datos en la Nube Azure
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
En cualquier proceso de programación, enfrentarse a errores es inevitable, pero también es una oportunidad para mejorar. En esta sesión nos encontramos con errores iniciales debido a un problema con los nombres de archivo en el código que se estaba utilizando. Cuando experimentes este tipo de errores, es crucial prestar atención a los mensajes de error que proporciona el sistema.
Los mensajes de error como los experimentados son comunes y se deben a varias posibles causas:
Aquí, un cambio en el comportamiento del código fue suficiente para resolver el problema.
Para automatizar tareas en la programación, la creación de archivos de texto puede ser una función esencial. En el contexto de un sistema de gestión como el descrito, donde se maneja un restaurante, esta funcionalidad resulta invaluable.
Se utilizó un método para abrir, escribir y cerrar archivos de texto, como se muestra a continuación:
# Apertura y escritura en el archivo
fael_paz = "ruta/del/archivo.txt" # Ruta dinámica para el archivo
file = open(file_paz, 'w') # Modo de apertura en escritura
file.write("Contenido del archivo...")
# Cierre del archivo para asegurar que se guarden los cambios
file.close()
Es posible nombrar estos archivos de manera dinámica para adaptarlos a tus necesidades:
# Formato del nombre del archivo utilizando una cadena formateada
file_name = f"Registro_{identificador}.txt"
# Escribe el nombre del archivo en un bloque de código
file_path = f"/ruta/{file_name}"
Con esta lógica, se genera un archivo cuyo nombre es variable dependiendo de los datos que se pasen al script.
Manejar archivos desde scripts requiere rigurosidad, especialmente cuando el volumen de archivos es grande, como en el caso de la automatización en un restaurante.
Para asegurarte de que la automatización sea efectiva, debes:
En el ejemplo, después de ejecutar el script, se autogeneraron cuatrocientos ochenta archivos, indicando el número de ordenes de mesas procesadas en el restaurante.
El proyecto final presentado permite entender cómo la automatización optimiza procesos, algo que es aplicable en diversas industrias. Puedes:
La capacidad de automatizar estos flujos de trabajo no solo mejora la eficiencia operacional, sino que también libera recursos valiosos para potenciar la innovación y optimización continua. Así que anímate a explorar las vastas posibilidades que la automatización puede ofrecer a tus proyectos.
Aportes 4
Preguntas 0
Muy buen contenido, excelente base para aplicar en los proyectos diarios.
Dato interesante: en las pruebas realizadas solo me dejó obtener bloques de hasta 30 registros. Cuando le ponía un número más grande me marcaba este error:
Request Information
RequestID:45564c54-0003-0026-3712-710eb9000000
RequestDate:Thu, 26 May 2022 10:12:03 GMT
StatusMessage:One of the query parameters specified in the request URI is outside the permissible range.
ErrorCode:OutOfRangeQueryParameterValue
ErrorMessage:One of the query parameters specified in the request URI is outside the permissible range.
RequestId:45564c54-0003-0026-3712-710eb9000000
Time:2022-05-26T15:12:03.6753047Z
Buena clase
Este es el código que usamos en el clase pero me da error al final, ya revise el código varias veces
using System;
using System.IO;
using Microsoft.Extensions.Configuration;
using Microsoft.Azure.Storage;
using Microsoft.Azure.Storage.Queue;
using Microsoft.Azure.Storage.Blob;
namespace QueueConsole
{
class Program
{
static void Main(string[] args)
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
IConfiguration config = new ConfigurationBuilder()
.AddJsonFile("appsettings.json",true,true).Build();
CloudStorageAccount myClient = CloudStorageAccount.Parse(config ["ConectionString"]);
CloudQueueClient queueClient = myClient.CreateCloudQueueClient();
CloudQueue queue = queueClient.GetQueueReference("filaprocesos");
CloudQueueMessage peekedMessage = queue.PeekMessage();
CloudBlobClient blobClient = myClient.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference("contenedorregistros");
container.CreateIfNotExists();
foreach (CloudQueueMessage item in queue.GetMessages(20, TimeSpan.FromSeconds(100)))
{
string filePath = string.Format(@"log{0}.txt",item.Id);
TextWriter tempFile = File.CreateText(filePath);
var message = queue.GetMessage().AsString;
tempFile.WriteLine(message);
Console.WriteLine("Archivo Creado");
tempFile.Close();
using(var fileStream =System.IO.File.OpenRead(filePath))
{
CloudBlockBlob myblob = container.GetBlockBlobReference(string.Format("log{0}.txt", item.Id));
myblob.UploadFromStream(fileStream);
Console.WriteLine("blob Creado");
}
queue.DeleteMessage(item);
}
Console.ReadLine();
}
}
}
me aparece este erro:
Unhandled exception. Microsoft.Azure.Storage.StorageException: The specified queue does not exist.
at Microsoft.Azure.Storage.Core.Executor.Executor.ExecuteAsync[T](RESTCommand1 cmd, IRetryPolicy policy, OperationContext operationContext, CancellationToken token) at Microsoft.Azure.Storage.Core.Executor.Executor.<>c__DisplayClass0_0
1.<ExecuteSync>b__0()
at Microsoft.Azure.Storage.Core.Util.CommonUtility.RunWithoutSynchronizationContext[T](Func1 actionToRun) at Microsoft.Azure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand
1 cmd, IRetryPolicy policy, OperationContext operationContext)
at Microsoft.Azure.Storage.Queue.CloudQueue.PeekMessages(Int32 messageCount, QueueRequestOptions options, OperationContext operationContext)
at Microsoft.Azure.Storage.Queue.CloudQueue.PeekMessage(QueueRequestOptions options, OperationContext operationContext)
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?