LINQ এর মাধ্যমে Arrays এবং Collections এর উপর Query করা

LINQ (Language Integrated Query) এর ব্যবহার - ভিজুয়াল বেসিক ডট নেট (VB.Net) - Computer Programming

246

LINQ এর মাধ্যমে Arrays এবং Collections এর উপর Query করা

LINQ (Language Integrated Query) হল একটি শক্তিশালী ফিচার যা VB.Net (এবং অন্যান্য .NET ভাষা) এর মধ্যে সংযুক্ত রয়েছে, যা আপনাকে একাধিক ডেটা সোর্স (যেমন অ্যারে, কালেকশন, ডেটাবেস, XML, ইত্যাদি) থেকে ডেটা নিয়ে সহজভাবে কুয়েরি করতে দেয়। LINQ ব্যবহার করে আপনি খুব সহজে অ্যারে এবং কালেকশনগুলোতে ডেটা অনুসন্ধান, ফিল্টার, গ্রুপিং, অর্ডারিং, এবং বিভিন্ন ধরনের ম্যানিপুলেশন করতে পারেন।

এখানে Arrays এবং Collections এর উপর LINQ কুয়েরি করার কিছু সাধারণ উদাহরণ দেয়া হলো।


১. LINQ দিয়ে Arrays এর উপর Query করা

LINQ ব্যবহার করে আপনি সহজেই অ্যারের উপরে কুয়েরি চালাতে পারেন। LINQ to Objects ব্যবহার করে আপনি অ্যারে, লিস্ট বা অন্যান্য কালেকশনের উপর কুয়েরি করতে পারেন।

অ্যারে তৈরি এবং LINQ Query উদাহরণ:

Imports System.Linq

Sub Main()
    ' অ্যারে ডিফাইন করা
    Dim numbers() As Integer = {10, 20, 30, 40, 50}

    ' LINQ Query ব্যবহার করে ফিল্টার করা
    Dim result = From num In numbers
                 Where num > 25
                 Select num

    ' ফলাফল প্রদর্শন করা
    For Each number In result
        Console.WriteLine(number)
    Next
End Sub

ব্যাখ্যা:

  • এখানে numbers অ্যারে তৈরি করা হয়েছে যা কিছু সংখ্যার সমষ্টি ধারণ করে।
  • LINQ কুয়েরি From num In numbers এর মাধ্যমে অ্যারের প্রতিটি উপাদান চেক করা হচ্ছে। Where num > 25 শর্ত অনুযায়ী শুধুমাত্র সেই উপাদানগুলি নির্বাচন করা হচ্ছে যা ২৫ এর বেশি।
  • Select num ব্যবহার করে কেবলমাত্র নির্বাচিত উপাদানগুলোকে আউটপুট করা হচ্ছে।

আউটপুট:

30
40
50

২. LINQ দিয়ে Collections (List) এর উপর Query করা

লিস্ট হলো একটি সাধারণ কালেকশন টাইপ যা VB.Net-এ খুবই জনপ্রিয়। LINQ দিয়ে লিস্টের উপর কুয়েরি করার উদাহরণ নিচে দেওয়া হলো।

লিস্ট তৈরি এবং LINQ Query উদাহরণ:

Imports System.Linq

Sub Main()
    ' লিস্ট তৈরি
    Dim names As New List(Of String) From {"John", "Jane", "Smith", "Alice", "Bob"}

    ' LINQ Query ব্যবহার করে নামের শুরু "J" দিয়ে শুরু হওয়া প্রাপ্তি
    Dim result = From name In names
                 Where name.StartsWith("J")
                 Select name

    ' ফলাফল প্রদর্শন
    For Each name In result
        Console.WriteLine(name)
    Next
End Sub

ব্যাখ্যা:

  • এখানে names নামক একটি লিস্ট তৈরি করা হয়েছে যা কিছু নাম ধারণ করে।
  • LINQ কুয়েরি ব্যবহার করে StartsWith("J") শর্তে সেই নামগুলো নির্বাচন করা হচ্ছে যা "J" দিয়ে শুরু হয়।
  • Select name এর মাধ্যমে কেবল নির্বাচিত নামগুলো আউটপুট হচ্ছে।

আউটপুট:

John
Jane

৩. LINQ দিয়ে Data Manipulation (Sorting, Grouping, etc.)

LINQ দিয়ে আপনি সহজে ডেটা সোর্ট, গ্রুপ, এবং ম্যানিপুলেট করতে পারেন। নীচে সেগুলোর কিছু উদাহরণ দেখানো হলো।

Soring (সাজানো) Example:

Imports System.Linq

Sub Main()
    ' লিস্ট তৈরি
    Dim numbers As New List(Of Integer) From {5, 3, 8, 1, 7}

    ' LINQ Query দিয়ে সিকোয়েন্স সট করা
    Dim result = From num In numbers
                 Order By num
                 Select num

    ' ফলাফল প্রদর্শন
    For Each number In result
        Console.WriteLine(number)
    Next
End Sub

ব্যাখ্যা:

  • এখানে Order By ব্যবহার করে লিস্টের সংখ্যা গুলি ছোট থেকে বড় (ascending) অর্ডারে সাজানো হয়েছে।

আউটপুট:

1
3
5
7
8

Grouping (গ্রুপিং) Example:

Imports System.Linq

Sub Main()
    ' লিস্ট তৈরি
    Dim numbers As New List(Of Integer) From {5, 10, 15, 20, 25, 30}

    ' LINQ Query দিয়ে গ্রুপিং করা
    Dim result = From num In numbers
                 Group num By num Mod 10 Into Group
                 Select Group

    ' গ্রুপের ফলাফল প্রদর্শন
    For Each group In result
        For Each number In group
            Console.WriteLine(number)
        Next
    Next
End Sub

ব্যাখ্যা:

  • এখানে Group num By num Mod 10 Into Group ব্যবহার করে সংখ্যাগুলোর শেষ ডিজিটের ভিত্তিতে গ্রুপ করা হয়েছে।

আউটপুট:

5
15
25
10
20
30

৪. LINQ Method Syntax (Methode Syntax) ব্যবহার

LINQ-এ আপনি Query Syntax (যেমন উপরের উদাহরণ) বা Method Syntax (যেমন ফাংশন কল) ব্যবহার করতে পারেন। Method Syntax হল LINQ কুয়েরি লেখার আরেকটি উপায়, যা অনেক বেশি ফাংশনাল স্টাইলের এবং পদ্ধতিগত।

LINQ Method Syntax উদাহরণ:

Imports System.Linq

Sub Main()
    ' লিস্ট তৈরি
    Dim numbers As New List(Of Integer) From {10, 20, 30, 40, 50}

    ' LINQ Method Syntax ব্যবহার করে ফিল্টার করা
    Dim result = numbers.Where(Function(n) n > 25).ToList()

    ' ফলাফল প্রদর্শন
    For Each number In result
        Console.WriteLine(number)
    Next
End Sub

ব্যাখ্যা:

  • Where মেথড ব্যবহার করে ফিল্টার করা হয়েছে যাতে শুধুমাত্র ২৫ এর বেশি সংখ্যাগুলি নির্বাচন করা হয়।
  • ToList() মেথড ব্যবহার করে ফলাফল লিস্টে রূপান্তর করা হয়েছে।

আউটপুট:

30
40
50

৫. Multiple Conditions (একাধিক শর্ত) সহ LINQ Query

LINQ-এ আপনি একাধিক শর্ত দিয়ে কুয়েরি চালাতে পারেন।

Multiple Conditions Example:

Imports System.Linq

Sub Main()
    ' লিস্ট তৈরি
    Dim numbers As New List(Of Integer) From {10, 20, 30, 40, 50}

    ' LINQ Query দিয়ে একাধিক শর্তে ফিল্টার করা
    Dim result = From num In numbers
                 Where num > 20 And num < 50
                 Select num

    ' ফলাফল প্রদর্শন
    For Each number In result
        Console.WriteLine(number)
    Next
End Sub

ব্যাখ্যা:

  • এখানে num > 20 And num < 50 শর্তে শুধুমাত্র সেই সংখ্যাগুলিই নির্বাচন করা হচ্ছে যা ২০ এর বেশি এবং ৫০ এর কম।

আউটপুট:

30
40

সারাংশ

  • LINQ (Language Integrated Query) VB.Net-এ একটি শক্তিশালী এবং নমনীয় কুয়েরি প্রযুক্তি যা আপনাকে অ্যারে বা কালেকশনের উপর ডেটা অনুসন্ধান, ফিল্টার, গ্রুপিং, এবং সোর্টিং করতে সাহায্য করে।
  • Query Syntax এবং Method Syntax দুটোই LINQ-এ ডেটা কুয়েরি করার পদ্ধতি।
  • LINQ ব্যবহার করে সহজে এবং কার্যকরীভাবে ডেটা অ্যাক্সেস এবং ম্যানিপুলেশন করা যায়।

এই কৌশলগুলি ব্যবহার করে আপনি সহজেই আপনার অ্যাপ্লিকেশনে ডেটার উপর জটিল কুয়েরি চালাতে পারবেন।

Content added By
Promotion

Are you sure to start over?

Loading...