top of page

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 }
    }
}

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.



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.

Posts recentes

Ver tudo
bottom of page