1 passo:
Criem um projeto do tipo ConsoleApplication em C#
2 passo:
Criem uma Classe chamada produtos e nela coloquem o código abaixo:
public string _Produto { get; set; }
public decimal _Preco { get; set; }
Esses são nossos atributos para cadastro e futuramente pesquisa de um produto.
3 passo:
Na classe Program no método Main coloquem o código abaixo:
while (true)
{
try
{
Console.WriteLine("Digite 1 para cadastrar um produto, ou 2 para consultar um produto no estoque.");
int Opcao = Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
if (Opcao == 1)
{
CadastroProduto();
}
else if (Opcao == 2)
{
ConsultaProduto();
}
else
{
throw new Exception("Operação inválida!");
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.ReadLine();
Main(new string[] { });
}
}
Aqui no nosso método main será pedido a operação que queremos realizar, 1 para cadastrar um produto ou 2 para consultar um produto ja cadastrado, o while serve para que sempre pedimos uma opção para o usuário mesmo após ele realizar uma escolha.
4 passo:
Cole os métodos abaixo na classe Program embaixo do método main:
//Pedi o nome e o preço do produto para cadastro direto na nossa Classe de produtos
private static void CadastroProduto()
{
Console.WriteLine("Digite o nome do produto: ");
string Produto = Console.ReadLine();
{
Console.WriteLine("Digite o nome do produto: ");
string Produto = Console.ReadLine();
Console.WriteLine("Digite o preço do produto: ");
decimal Preco = Convert.ToDecimal(Console.ReadLine());
decimal Preco = Convert.ToDecimal(Console.ReadLine());
lstProdutos.Add(new Produtos { _Produto = Produto, _Preco = Preco });
Console.WriteLine("Produto cadastrado com sucesso!");
Console.WriteLine();
}
Console.WriteLine();
}
// Consulta produtos cadastrados (Não se esqueçam C# é case sensitivy) ordena pelo nome e preco e se encontrar resultados exibe na tela.
private static void ConsultaProduto()
{
Console.WriteLine("Digite o nome do produto a ser pesquisado no estoque: ");
string NomeProduto = Console.ReadLine();
{
Console.WriteLine("Digite o nome do produto a ser pesquisado no estoque: ");
string NomeProduto = Console.ReadLine();
//Realiza a consulta de fato onde:
//Produto: pode ser um nome qualquer definido por você
//lstProdutos = Nossa lista de produtos cadastrados onde será feita nossa pesquisa
//Produto._Produto.Contains(NomeProduto) = Aqui é o passo essencial, onde verifica se a Classe possui um produto ao qual o usuário informou na tela.
//orderby Produto._Produto, Produto._Preco = ordena pelo nome do produto e depois pelo preço assim como no SQL podemos definir se será em ordem crescente (ascending) ou decrescente (descending)
//select Produto = Seleciona Todos os campos da classe Produtos, se quiser pode selecionar somente o nome do produto escrevendo Produto._Produto ou somente o Preço escrevendo Produto._Preco.
var ListaProduto = from Produto in lstProdutos where Produto._Produto.Contains(NomeProduto) orderby Produto._Produto, Produto._Preco ascending select Produto;
//Verifica se encontrou algum resultado, se sim faz um foreach da Classe Produtos na pesquisa,afinal nossa pesquisa nada mais é do que um filtro da Classe produto.
if (ListaProduto.Count() >= 1)
{
foreach (var Produto in ListaProduto)
{
Console.WriteLine("Nome do Produto: " + Produto._Produto + " Preço: " + Produto._Preco);
}
Console.WriteLine();
}else
{
Console.WriteLine("Produto não encontrado!");
}
}
{
foreach (var Produto in ListaProduto)
{
Console.WriteLine("Nome do Produto: " + Produto._Produto + " Preço: " + Produto._Preco);
}
Console.WriteLine();
}else
{
Console.WriteLine("Produto não encontrado!");
}
}
Bom esta pronto, um exemplo fácil e pratico de como usar LinqToObject, a idéia é crie uma classe com os atributos que você deseja, popule as mesmas com os dados e use uma consulta Linq para obter os dados que deseja :P.
É isso ae Jonny....
ResponderExcluirParabéns pela iniciativa!