Form Data এবং Query String এর মাধ্যমে ডেটা বাইন্ড করা

Microsoft Technologies - এএসপি ডট নেট কোর (ASP.Net Core) বাইন্ডিং এবং ভ্যালিডেশন (Model Binding and Validation) |
247
247

ASP.NET Core-এ Model Binding প্রক্রিয়া ব্যবহারকারীর ইনপুট ডেটা (যেমন ফর্ম ডেটা বা URL কুইরি স্ট্রিং) মডেল ক্লাসের প্রপার্টিতে স্বয়ংক্রিয়ভাবে মাপসই করে। Form Data এবং Query String দুটি সাধারণ উপায় যা দিয়ে ডেটা বাইন্ড করা যায়।


Form Data এর মাধ্যমে ডেটা বাইন্ড করা

Form Data সাধারণত HTTP POST রিকোয়েস্টের মাধ্যমে ফর্ম থেকে পাঠানো হয়। ASP.NET Core-এ, Form Data ব্যবহার করে ডেটা মডেল ক্লাসের প্রপার্টিতে বাইন্ড করা হয়, যা মূলত HTML ফর্মের ইনপুট ফিল্ডগুলির সাথে সম্পর্কিত।

উদাহরণ:

ধরা যাক, আপনার একটি User মডেল রয়েছে এবং আপনি একটি ফর্ম থেকে ব্যবহারকারীর নাম এবং ইমেইল সংগ্রহ করতে চান।

Model:

public class User
{
    public string Name { get; set; }
    public string Email { get; set; }
}

View (HTML Form):

<form method="post" asp-action="Submit">
    <div>
        <label for="Name">Name:</label>
        <input type="text" id="Name" name="Name" />
    </div>
    <div>
        <label for="Email">Email:</label>
        <input type="email" id="Email" name="Email" />
    </div>
    <button type="submit">Submit</button>
</form>

Controller:

public class UserController : Controller
{
    [HttpPost]
    public IActionResult Submit(User user)
    {
        if (ModelState.IsValid)
        {
            // Form data থেকে ডেটা বাইন্ডিং করা হয়েছে
            // user.Name এবং user.Email ব্যবহার করা যেতে পারে
            return Content($"Name: {user.Name}, Email: {user.Email}");
        }
        return View();
    }
}

এখানে User মডেলটি ফর্মের ইনপুট ফিল্ডগুলির সাথে বাইন্ড হয়েছে। যখন ফর্মটি সাবমিট করা হবে, ASP.NET Core স্বয়ংক্রিয়ভাবে ইনপুট ডেটাগুলিকে User মডেল ক্লাসে মাপসই করবে।


Query String এর মাধ্যমে ডেটা বাইন্ড করা

Query String HTTP GET রিকোয়েস্টের অংশ হিসেবে URL-এর পরে পাঠানো ডেটা। Query String ডেটা সাধারণত URL-এ কিওয়ারি-পেয়ারের মাধ্যমে থাকে, যেমন ?id=1&name=John। ASP.NET Core-এ, আপনি Query String থেকে ডেটা মডেল ক্লাসে বাইন্ড করতে পারেন।

উদাহরণ:

ধরা যাক, আপনাকে URL থেকে id এবং name গ্রহণ করতে হবে এবং এই ডেটা মডেল ক্লাসে বাইন্ড করতে হবে।

Model:

public class UserQuery
{
    public int Id { get; set; }
    public string Name { get; set; }
}

Controller:

public class UserController : Controller
{
    [HttpGet]
    public IActionResult Search(UserQuery query)
    {
        if (ModelState.IsValid)
        {
            // Query string থেকে ডেটা বাইন্ডিং করা হয়েছে
            return Content($"Id: {query.Id}, Name: {query.Name}");
        }
        return View();
    }
}

এখানে, যখন আপনি URL এ এমন কিছু রিকোয়েস্ট করবেন:

/User/Search?id=1&name=John

ASP.NET Core স্বয়ংক্রিয়ভাবে Query String থেকে id এবং name প্যারামিটারগুলি UserQuery মডেল ক্লাসের প্রপার্টিতে বাইন্ড করবে।


Form Data এবং Query String এর মাধ্যমে ডেটা বাইন্ডিং এর মধ্যে পার্থক্য

বৈশিষ্ট্যForm Data (POST)Query String (GET)
উপস্থিতিHTTP POST রিকোয়েস্টের মধ্যে থাকেURL এর পর Query String অংশে থাকে
ডেটা নিরাপত্তাফর্ম ডেটা নিরাপদ, কারণ এটি URL এর বাইরে থাকেURL-এ থাকা ডেটা সাধারণত দৃশ্যমান থাকে
ডেটা পরিমাণবেশি পরিমাণ ডেটা পাঠানো যেতে পারেসীমিত পরিমাণ ডেটা পাঠানো যায়
ব্যবহারফর্ম সাবমিটের মাধ্যমে ব্যবহার করা হয়URL এর মাধ্যমে ডেটা পাঠানো হয়

সারাংশ

ASP.NET Core-এ Form Data এবং Query String উভয়ই ডেটা বাইন্ডিংয়ের জন্য ব্যবহৃত হয়, তবে তাদের ব্যবহারের ক্ষেত্র আলাদা। Form Data সাধারণত POST রিকোয়েস্টে ব্যবহৃত হয় যেখানে বড় এবং সংবেদনশীল ডেটা পাঠানো যায়, আর Query String সাধারণত GET রিকোয়েস্টে ব্যবহৃত হয় যেখানে ছোট পরিমাণের ডেটা পাঠানো হয় এবং এটি URL-এ দৃশ্যমান থাকে। ASP.NET Core-এ এই ডেটাগুলিকে স্বয়ংক্রিয়ভাবে মডেল ক্লাসে বাইন্ড করা যায়, যার ফলে ডেটা প্রাপ্তি এবং ব্যবহারের প্রক্রিয়া সহজ হয়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion