در این مقاله میخواهیم با هم روش استفاده از LINQ query و query زدن به داده های dataset را بیاموزیم. برای آموزش استفاده از LINQ در Dataset با من همراه باشید … میخواهم در زیر نکاتی را توضیح بدهم. همه ی نکات را در یک مثال توضیح داده ام و در انتها نیز دمو را برای دانلود قرار داده ام. امیدوارم از آن استفاده کنید
LINQ در DataSet
Projection Operator.
الف ) Select : این یکی از Projection operator ها است که یک مقدار را از یک کالکشن انتخاب میکند.
در مثال آورده شده data source من یک dataset است. احتیلج دارم که هم اصطلاح lambda و هم query ساده را توضیح دهم.
۱ – در اینجا یک query ساده همانند یک مثال SQL query است (Select * from tablename) :
var data = from s in MyData().Tables[0].AsEnumerable() (۲) select s; (۳) foreach (var mydata in data) (۴) { (۵) Console.WriteLine("EmployeeID:" + mydata["Employeeid"] + "," + "Name:" + mydata["Name"] + "Gender:" + mydata["Gender"] + ",Age:" + mydata["Age"] + (۶) ",Qualification:" + mydata["Qualification"] + ",FatherName:" + mydata["FatherName"] + ",Address:" + mydata["Address"] + Environment.NewLine);
۲ – در اینجا همه ی داده ها را با استفاده از اصطلاح lambda انتخاب کرده ام.
Console.WriteLine("-----------Simple Query to=>select all column data using Lambda Expression of linq----------------"); var data2 = MyData().Tables[0].AsEnumerable().Select(k => k); foreach (var mydata in data2) { Console.WriteLine("EmployeeID:" + mydata["Employeeid"] + "," + "Name:" + mydata["Name"] + "Gender:" + mydata["Gender"] + ",Age:" + mydata["Age"] + ",Qualification:" + mydata["Qualification"] + ",FatherName:" + mydata["FatherName"] + ",Address:" + mydata["Address"] + Environment.NewLine); }
۳ – در اینجا یک ستون مشخص انتخاب میکنیم همانند SQL query (Select Column1,column2 from tablename) :
//Like Sql query =>select columnname1,columnname2 from tablename Console.WriteLine("--------------------------Simple Query to=> select specific column data-- ------------------ --------"); var data1 = from p in MyData().Tables[0].AsEnumerable() select new { Employeeid = p["Employeeid"].ToString(), Name = p["Name"].ToString() }; foreach (var mydata1 in data1) { Console.WriteLine(mydata1.Employeeid + "," + mydata1.Name); }
۴ – در اینجا قصد دارم که query بالا را به lambda تبدیل کنیم.
//Using Lambda expression=>Like Sql query =>select columnname1,columnname2 from tablename Console.WriteLine("-----------Simple Query to=>select all column data using Lambda Expression of linq--- -------------"); var data3 = MyData().Tables[0].AsEnumerable().Select(k => new { Employeeid = k["Employeeid"], Name = k["Name"] }); foreach (var mydata1 in data3) { Console.WriteLine(mydata1.Employeeid + "," + mydata1.Name); }
۵ – در اینجا طریقه ی تبدیل یک مورد SQL به LINQ را توضیح میدهم :
//Using Lambda expression=>Like Sql query=>use case in Sql query //=>select columnname1,columnname2,case when columnname3 = 1 then 'Female' when columnname3 = ۲ then 'Male' from tablename Console.WriteLine("-----------Simple Query to=>select all column data using Lambda Expression of linq----------------"); var data4 = MyData().Tables[0].AsEnumerable().Select(k => new { Employeeid = k["Employeeid"], Name = k["Name"], Gender = k["Gender"].ToString() == "1" ? "Female" : k["Gender"].ToString() == "2" ? "Male" : "" }); foreach (var mydata1 in data4) { Console.WriteLine(mydata1.Employeeid + "," + mydata1.Name + "," + mydata1.Gender);
امیدوارم از خواندن این مقاله لذت برده باشید !
موفق باشید !
هیچ دیدگاهی نوشته نشده است.