top of page

Dica C#: Extended Property Patterns com Switch

Vamos explorar os Extended Property Patterns, introduzidos no C# 10, que permitem combinar condições mais complexas em propriedades de objetos durante o pattern matching. Veja o exemplo no código abaixo.


public class Produto
{
    public string Nome { get; set; }
    public decimal Preco { get; set; }
}

public class Program
{
    public static void Main()
    {
        Produto produto = new Produto { Nome = "Caneta", Preco = 5.99m };

        string resultado = produto switch
        {
            { Preco: > 10.00m } => "Produto caro",
            { Preco: <= 10.00m } => "Produto acessível",
            _ => "Preço desconhecido"
        };

        Console.WriteLine(resultado);
    }
}

Explicação:

Com os Extended Property Patterns, você pode usar o pattern matching para acessar propriedades aninhadas de um objeto e aplicar condições diretamente a essas propriedades. Isso simplifica a verificação de condições complexas em objetos e torna o código mais legível e expressivo. No exemplo acima, utilizamos essa funcionalidade para verificar se um objeto Produto tem um Preco maior que um valor específico, tudo isso dentro de uma única expressão switch.



Espero que essa dica ajude você a utilizar os Extended Property Patterns para escrever código mais expressivo e eficiente! Até a próxima.

Posts recentes

Ver tudo
bottom of page