Se você deseja anexar a segunda fonte de dados à primeira fonte de dados, o LINQ em C# fornece um método - concat ().
Idioma Integrated Query Language (LINQ) é usado para executar operações nas coleções C# ou estruturas de dados normais. Também podemos executar as operações de consulta de banco de dados com o LINQ. O LINQ suporta muitos métodos e funções usadas para manipulação de dados, como atualização, exclusão e inserção, etc.
Linq Concat ()
Concat () em Linq se junta às duas fontes de dados. A fonte de dados pode ser uma matriz, lista, hashset, etc. Mas a condição é que ambos os tipos de dados são semelhantes. Caso contrário, o erro ocorre.
Sintaxe
input_source1.Concat (input_source2);
Onde input_source1 é a primeira fonte de dados e input_source2 é a segunda fonte de dados.
Vamos entender melhor isso pelos seguintes exemplos:
Exemplo 1
Aqui, criaremos duas listas com o tipo int que têm valores numéricos e concatenaremos essas duas listas.
usando o sistema;
usando o sistema.Linq;
usando o sistema.Coleções.Genérico;
// Crie uma classe - Linuxhint
Classe linuxhint
estático public void main ()
// Crie uma lista chamada input_numbers1
var input_numbers1 = new List () 100.200.300.456;
// Crie uma lista chamada input_numbers2
var input_numbers2 = new List () 1,2,3,4;
// Aplique o método Linq concat () para ingressar em duas fontes de dados.
var combinado = input_numbers1.Concat (input_numbers2);
Console.WriteLine ("dados combinados:");
foreach (valores de var em combinado)
Console.WriteLine (valores);
Saída
Explicação
1. Primeiro, criamos duas listas com tipos inteiros. O input_numbers1 refere -se à primeira lista inteira e o input_numbers2 refere -se à segunda lista inteira.
2. Depois disso, ingressamos em duas listas usando o método concat ().
3. Finalmente, estamos exibindo a saída usando um loop foreach.
Exemplo 2
Aqui, criaremos duas listas com tipos de string que possuem valores de string e concatenamos essas duas listas.
usando o sistema;
usando o sistema.Linq;
usando o sistema.Coleções.Genérico;
// Crie uma classe - Linuxhint
Classe linuxhint
estático public void main ()
// Crie uma lista chamada input_strings1
var input_strings1 = new List () "hello";
// Crie uma lista chamada input_strings2
var input_strings2 = new List () "Linuxhint", "Welcomes", "U";
// Aplique o método Linq concat () para ingressar em duas fontes de dados.
var combinado = input_strings1.Concat (input_strings2);
Console.WriteLine ("dados combinados:");
foreach (valores de var em combinado)
Console.WriteLine (valores);
Saída
Explicação
1. Primeiro, criamos duas listas com tipos de string. O input_strings1 refere -se à primeira lista de string e o input_strings2 refere -se à segunda lista de strings.
2. Depois disso, ingressamos nas duas listas usando o método concat ().
3. Finalmente, somos exibidos a saída usando um loop foreach.
Exemplo 3
Vamos criar a comida que contém três atributos - Food_price, nome e quantidade. Em seguida, criamos duas listas da fonte de alimento e concatamos o atributo de nome.
usando o sistema;
usando o sistema.Linq;
usando o sistema.Coleções.Genérico;
// Crie uma classe - Linuxhint
Classe linuxhint
// Defina os dados para alimentos
comida de aula
public int Food_price get; definir;
Nome da String Public get; definir;
public int Quantity get; definir;
estático public void main ()
// Crie dados
List primeiro_list = new List ();
// Adicione valores
primeiro_list.Add (novo alimento food_price = 300, name = "parota", quantidade = 1);
primeiro_list.Add (novo alimento Food_price = 800, name = "paneer", quantidade = 4);
primeiro_list.Add (novo alimento Food_Price = 100, Name = "Mushroom", Quantity = 2);
primeiro_list.Add (novo alimento Food_price = 564, name = "vegtables", quantidade = 10);
primeiro_list.Add (novo alimento Food_price = 400, name = "frutas", quantidade = 8);
// Crie dados
List Second_list = new List ();
// Adicione valores
Second_list.Add (novo alimento food_price = 44, name = "roti", quantidade = 0);
Second_list.Add (novo alimento food_price = 44, name = "chocos", quantidade = 1);
Second_list.Add (novo alimento food_price = 12, nome = "sorvete", quantidade = 2);
Console.WriteLine ("-------------------------- LIST = I ---------------------- -------- ");
foreach (valor var no primeiro_list)
Console.WriteLine (valor.Food_price+"->"+valor.nome+"->"+valor.quantidade);
Console.WriteLine ("------------------------ LIST = II ---------------------- -------- ");
foreach (valor var em segundo_list)
Console.WriteLine (valor.Food_price+"->"+valor.nome+"->"+valor.quantidade);
Console.WriteLine ("------------------------ Linq Concat-Nome ------------------- --------- ");
// Concatenando o atributo de nome nas duas listas.
var resultado = primeiro_list.Selecione (elemento => elemento.nome).Concat (Second_list.Selecione (elemento => elemento.nome));
foreach (valor var no resultado)
Console.WriteLine (valor);
Saída
Explicação
1. Criamos duas listas de comida chamada First_list e Second_list. O primeiro_list tem 5 valores e o segundo_list tem 3 valores.
2. Depois disso, combinamos os valores do atributo de nome das duas listas usando o método concat ().
3. Finalmente, somos exibidos o atributo de nome combinado usando o loop foreach.
Conclusão
Aprendemos como ingressar nas duas fontes de dados usando o método concat () disponível em C# - LINQ. Verifique se os tipos de dados devem ser os mesmos ao concatenar as duas fontes de dados. Demonstramos três exemplos diferentes para entender melhor o conceito e usamos os módulos Usando o sistema, usando o sistema.Linq, usando o sistema.Coleções.Genérico no seu código.