DEV Community

Juarez Júnior for Develop4Us

Posted on • Edited on

Dica C#: Pattern Matching Enhancements em Classes

Vejamos hoje um outro exemplo de Pattern Matching Enhancements do C# 9.

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 = 2.99m };

        if (produto is { Nome: "Caneta", Preco: <= 5.00m })
        {
            Console.WriteLine("Produto válido e com preço acessível.");
        }
        else
        {
            Console.WriteLine("Produto inválido ou preço alto.");
        }
    }
}
Enter fullscreen mode Exit fullscreen mode

No código acima, usamos o pattern matching para verificar se o objeto produto tem Nome igual a "Caneta" e Preco menor ou igual a 5.00m. O interessante desse exemplo é que estamos comparando os valores das propriedades da classe de uma forma intuitiva e fácil de ler.

Código fonte: GitHub

Espero que essa dica ajude você a explorar novas maneiras de usar o pattern matching em C#! Até a próxima.

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay