1
resposta

Inserindo a ID dos produtos

Fala galera, tudo certo?

Estou treinando aqui listas e me deparei com uma situação que não estou sabendo como realizar.

Estou querendo inserir de forma automatica a o ID dos itens já cadastrados, porém não estou sabendo fazer.

Até consigo realizar o procedimento usando um arry e o for, mas com listas até o presente momento não consegui.

Alguém consegue me da uma luz?

Segue o Program.cs

List listaDeProdutos = new List(); Produtos produtos = new Produtos(); produtos.nome = "Maçã"; produtos.Quantidade = 10; produtos.valorUnitario = 2.27;

Produtos produtos1 = new Produtos(); produtos1.nome = "Banana"; produtos1.Quantidade = 12; produtos1.valorUnitario = 1;

Produtos produtos2 = new Produtos(); produtos2.nome = "Uva"; produtos2.Quantidade = 110; produtos2.valorUnitario = 0.27;

Produtos produtos3 = new Produtos(); produtos3.nome = "Manga"; produtos3.Quantidade = 500; produtos3.valorUnitario = 3.0;

listaDeProdutos.Add(produtos2); listaDeProdutos.Add(produtos3); listaDeProdutos.Add(produtos); listaDeProdutos.Add(produtos1);

foreach (Produtos produto in listaDeProdutos) { Console.WriteLine($"Nome: {produto.nome}\nQuantidade: {produto.Quantidade}\nValor Unitario R${produto.valorUnitario}\n------------------------"); }

E segue a classe Produtos.cs

public class Produtos { public string nome { get; set; } public int Quantidade { get; set; } public double valorUnitario { get; set; }

}
1 resposta

Rafael,

Desculpe se eu NÃO entendi a sua pergunta e NÃO é isso quer você quer...

O Construtor (CTOR) da classe "Produtos" ao criar a instância gera um "Guid" (Identificador Global Único) automaticamente que pode ser usado como uma PK (Primary Key)? É isso?!?

Classe Produtos:

using System.ComponentModel.DataAnnotations;

public class Produtos
{
    [Key]
    [Required]
    public string ID { get; }
    public string nome { get; set; }
    public int Quantidade { get; set; }
    public double valorUnitario { get; set; }

    public Produtos()
    {
        ID = Guid.NewGuid().ToString();
    }
}

Program.cs:

ArrayList listaDeProdutos = new ArrayList();

Produtos produtos = new Produtos();
produtos.nome = "Maçã";
produtos.Quantidade = 10;
produtos.valorUnitario = 2.27;

Produtos produtos1 = new Produtos();
produtos1.nome = "Banana";
produtos1.Quantidade = 12;
produtos1.valorUnitario = 1;

Produtos produtos2 = new Produtos();
produtos2.nome = "Uva";
produtos2.Quantidade = 110;
produtos2.valorUnitario = 0.27;

Produtos produtos3 = new Produtos();
produtos3.nome = "Manga";
produtos3.Quantidade = 500;
produtos3.valorUnitario = 3.0;

listaDeProdutos.Add(produtos2);
listaDeProdutos.Add(produtos3);
listaDeProdutos.Add(produtos);
listaDeProdutos.Add(produtos1);

foreach (Produtos produto in listaDeProdutos)
{
    Console.WriteLine($"ID: {produto.ID}\nNome: {produto.nome}\nQuantidade: {produto.Quantidade}\nValor Unitario R${produto.valorUnitario}\n------------------------");
}

Veja também:

===============================================================

C# - Criando e usando GUIDs (.NET Core)

https://www.macoratti.net/20/09/c_guids1.htm

===============================================================

C# – O Identificador Global Único – Guid

18 DEZ, 2013

O struct Guid representa um identificador único global: um valor de 16 bytes que, se gerado randomicamente, irá gerar um identificador (quase) único.

https://imasters.com.br/back-end/c-o-identificador-global-unico-guid

===============================================================

Data Annotations Attributes in EF 6 and EF Core

https://www.entityframeworktutorial.net/code-first/dataannotation-in-code-first.aspx

===============================================================

[]'s,

Fabio I.