DEV Community

Juarez Júnior for Develop4Us

Posted on • Edited on

Dica C#: Record Types usando With

Vamos falar sobre como os Record Types no C# 10, combinados com as expressões with, facilitam a criação de cópias de objetos imutáveis com modificações específicas. Veja o exemplo no código abaixo.

public record Produto(string Nome, decimal Preco);

public class Program
{
    public static void Main()
    {
        // Criando um record Produto
        var produto1 = new Produto("Caneta", 2.99m);

        // Criando uma cópia do record com o preço alterado
        var produto2 = produto1 with { Preco = 3.49m };

        Console.WriteLine(produto1); // Saída: Produto { Nome = Caneta, Preco = 2.99 }
        Console.WriteLine(produto2); // Saída: Produto { Nome = Caneta, Preco = 3.49 }
    }
}
Enter fullscreen mode Exit fullscreen mode

Explicação:
Os Record Types permitem criar objetos imutáveis de forma simples e direta. Quando você precisa criar uma cópia de um objeto, mas deseja modificar alguns de seus valores, as expressões with são a solução perfeita. Elas permitem criar uma nova instância do objeto com as alterações desejadas, mantendo as outras propriedades intactas. No exemplo acima, criamos uma cópia de um record alterando apenas um de seus campos, demonstrando como essa funcionalidade é prática e poderosa.

Código fonte: GitHub

Espero que essa dica ajude você a utilizar os Record Types e expressões with de maneira eficiente em seus projetos! 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)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

👋 Kindness is contagious

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

Okay