Programa C# para imprimir los empleados cuyo nombre comenzó con el carácter ‘S’ usando LINQ

LINQ se conoce como Language Integrated Query y se introdujo en .NET 3.5. Brinda la capacidad a los lenguajes .NET para generar consultas para recuperar datos de la fuente de datos. Elimina la falta de coincidencia entre los lenguajes de programación y las bases de datos y la sintaxis utilizada para crear una consulta es la misma sin importar qué tipo de fuente de datos se utilice. En este artículo, aprenderemos cómo imprimir los detalles de los empleados cuyo nombre comienza con la letra ‘S’ usando LINQ. Así que para hacer nuestra tarea usamos el método Where(). Este método filtra la secuencia dada o la array de valores según el predicado y, para usar este método, debe agregar los espacios de nombres System.Linq y System.Collections.Generic en su programa.

Sintaxis:

Where<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>)

Ejemplo:

Input : List of Employees:
        {{id = 101, name = "Sravan", age = 12},
         {id = 102, name = "deepu",  age = 15},
         {id = 103, name = "manoja", age = 13},
         {id = 104, name = "Sathwik", age = 12},
         {id = 105, name = "Saran",  age = 15}}
Output : {{id = 105, name = "sravan", age = 15},
          {id = 104, name = "Sathwik",age = 12},
          {id = 105, name = "Saran",  age = 15}}
   
Input : List of Employees:
        {{id = 102, name = "deepu",  age = 15},
         {id = 103, name = "manoja", age = 13}}
Output : No Output

Acercarse:

Para encontrar la lista de empleados cuyo nombre comienza con la letra ‘S’ siga los siguientes pasos:

  1. Cree una lista de empleados con tres variables (Id, nombre, departamento y salario).
  2. Repita los detalles del empleado usando la función Where() y obtenga los detalles del empleado eligiendo un empleado cuyo nombre comience con ‘S’ usando s => s.name[0] == ‘S’.
  3. Ahora llama al método ToString().
  4. Mostrar los detalles del empleado.

Ejemplo:

C#

// C# program to display the details of those 
// employees whose name starts with character "S"
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
  
class Employee{
      
// Declare 4 variables - id, name, 
// department, and salary
int id; 
int salary;
string name;
string department;
  
// Get the to string method that returns 
// id, name, department, and salary
public override string ToString()
{
    return id + " " + name + " " + 
       salary + " " + department;
}
  
// Driver code
static void Main(string[] args)
{
      
    // Declare a list variable 
    List<Employee> emp = new List<Employee>()
    {
          
        // Create 5 Employee details
        new Employee{ id = 101, name = "Sravan", 
                      salary = 12000, department = "HR" },
        new Employee{ id = 102, name = "deepu", 
                      salary = 15000, department = "Development" },
        new Employee{ id = 103, name = "manoja", 
                      salary = 13000, department = "HR" },
        new Employee{ id = 104, name = "Sathwik", 
                      salary = 12000, department = "Designing" },
        new Employee{ id = 105, name = "Saran", 
                      salary = 15000, department = "Development" }
    };
      
    // Iterate the Employee by selecting Employee 
    // name starts with S
    IEnumerable<Employee> result = emp.Where(x => x.name[0] == 'S');
      
    // Display employee details
    Console.WriteLine("ID  Name  Salary  Department");
    Console.WriteLine("++++++++++++++++++++++++++++");
    foreach (Employee e in result)
    {
          
        // Call the to string method
        Console.WriteLine(e.ToString());
    }    
}
}

Producción:

ID  Name  Salary  Department
++++++++++++++++++++++++++++
101 Sravan 12000 HR
104 Sathwik 12000 Designing
105 Saran 15000 Development

Publicación traducida automáticamente

Artículo escrito por manojkumarreddymallidi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *