JSON dnámico

 static async Task Main(string[] args)
    {
        // URL del JSON
        string url = "https://jsonplaceholder.typicode.com/posts";

        // Leer el JSON de la URL
        var json = await ObtenerJsonDesdeUrl(url);

        // Deserializar el JSON en un tipo anónimo
        var datos = JsonSerializer.Deserialize<dynamic>(json, new JsonSerializerOptions
        {
            PropertyNameCaseInsensitive = true
        });

        // Iterar y mostrar datos
        foreach (var elemento in datos)
        {
            Console.WriteLine($"ID: {elemento.id}, Título: {elemento.title}");
        }
    }

    // Método para obtener el JSON desde una URL
    public static async Task<string> ObtenerJsonDesdeUrl(string url)
    {
        using HttpClient client = new HttpClient();
        var response = await client.GetAsync(url);
        response.EnsureSuccessStatusCode(); // Lanza excepción si el estado no es 2xx
        return await response.Content.ReadAsStringAsync();
    }
}

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos