using System.Globalization;
using System.Collections.Concurrent;
static void Main(string[] args)
using (var reader = new StreamReader(@"H:\MOCK_DATA - MOCK_DATA.csv"))
using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture))
var records = csv.GetRecords<Data>();
var query1 = from j in records
where j.Gender == "Female" && j.Country == "China"
Console.WriteLine("Women from China");
Console.WriteLine("------------------");
Console.WriteLine($"{h.id},{h.First_name},{h.Last_name},{h.Email},{h.Gender}.{h.Country},{h.Company_Name}");
var query2 = from x in records
where x.Gender == "Male" && x.Country == "France"
Console.WriteLine("men and france");
Console.WriteLine("------------------");
foreach (var z in query2)
Console.WriteLine($"{z.id},{z.First_name},{z.Last_name},{z.Email},{z.Gender}.{z.Country},{z.Company_Name}");
var query3 = from y in records
where y.Gender.Contains("has")
Console.WriteLine("has mail");
Console.WriteLine("------------------");
foreach (var a in query3)
Console.WriteLine($"{a.id},{a.First_name},{a.Last_name},{a.Email},{a.Gender}.{a.Country},{a.Company_Name}");
var query4 = from t in records
where t.id > 28 && t.id < 59 && t.Company_Name == "MyBuzz"
Console.WriteLine("Mybuzz");
Console.WriteLine("------------------");
foreach (var b in query4)
Console.WriteLine($"{b.id},{b.First_name},{b.Last_name},{b.Email},{b.Gender}.{b.Country},{b.Company_Name}");
var query5 = from m in records
where m.Country == "Thailand" && m.Company_Name == "Snaptags"
Console.WriteLine("thai and snaptags");
Console.WriteLine("------------------");
foreach (var c in query5)
Console.WriteLine($"{c.id},{c.First_name},{c.Last_name},{c.Email},{c.Gender}.{c.Country},{c.Company_Name}");
public int id { get; set; }
public string First_name { get; set; }
public string Last_name { get; set; }
public string Email { get; set; }
public string Gender { get; set; }
public string Country { get; set; }
public string Company_Name { get; set; }