class Customer
{
public int ID { get; set; }
public string Name { get; set; }
}
class Order
{
public int ID { get; set; }
public string Product { get; set; }
}
class Program
{
static void Main(string[] args)
{
var customers = new Customer[]
{
new Customer{ID = 5, Name = "Sam"},
new Customer{ID = 6, Name = "Dave"},
new Customer{ID = 7, Name = "Julia"},
new Customer{ID = 8, Name = "Sue"}
};
var orders = new Order[]
{
new Order{ID = 5, Product = "Book"},
new Order{ID = 6, Product = "Game"},
new Order{ID = 7, Product = "Computer"},
new Order{ID = 8, Product = "Shirt"}
};
var qry =
from c in customers
join o in orders on c.ID equals o.ID
select string.Format("{0},{1},{2}", c.ID, c.Name, o.Product);
ObjectDumper.Write(qry);
string fname = @"d:\linq.csv";
File.WriteAllLines(fname, qry);
Console.WriteLine("Save to " + fname);
Console.ReadLine();
var input =
from line in File.ReadAllLines(fname)
let tokens = line.Split(',')
select new { ID = Convert.ToInt32(tokens[0]), Name = tokens[1], Prod = tokens[2] };
ObjectDumper.Write(input);
Console.ReadLine();
}
}
LINQ join and CSV read/write
最新推荐文章于 2022-08-09 22:26:30 发布