LINQ (Language-Integrated Query) হলো কোয়েরি ক্যাপাবিলিটি C# ল্যাঙ্গুয়েজে সরাসরি ইন্টিগ্রেট করার টেকনোলজি সেট।
আপনি SQL Server, XML, ADO.NET DataSet, এবং যেকোনো IEnumerable বা IEnumerable<T> সাপোর্ট করা কালেকশনের জন্য LINQ কোয়েরি লিখতে পারেন।
- LINQ-to-SQL: রেজাল্ট খালি থাকলে
First()কল করলে "Sequence contains no elements" এক্সেপশন থ্রো করে। - ToList(): খালি লিস্ট রিটার্ন করে (নো এক্সেপশন)।
উদাহরণ ১: String লিস্টে ফিল্টার (খালি রেজাল্ট)
class Program
{
public static void Main()
{
List<string> list = new List<string> { "a" };
IEnumerable<string> ilist = list.Where(x => x == "ABC").ToList();
System.Console.WriteLine(ilist.Count()); // 0
foreach (var item in ilist) System.Console.WriteLine(item);
Console.ReadLine();
}
}
আউটপুট
0
উদাহরণ ২: Int লিস্টে ফিল্টার (খালি রেজাল্ট)
class Program
{
public static void Main()
{
List<int> list = new List<int> { 1 };
IEnumerable<int> ilist = list.Where(x => x == 3).ToList();
System.Console.WriteLine(ilist.Count()); // 0
foreach (var item in ilist) System.Console.WriteLine(item);
Console.ReadLine();
}
}
আউটপুট
0
সেরা অনুশীলন: FirstOrDefault(), SingleOrDefault() ব্যবহার করুন (নাল রিটার্ন করে), Any() ব্যবহার করে চেক করুন আগে। ToList() সবসময় সেফ (খালি লিস্ট রিটার্ন করে)।