ASP.Net MVC-তে Data Annotation এবং Validation গুরুত্বপূর্ণ ভূমিকা পালন করে, কারণ এগুলি ব্যবহারকারীর ইনপুটের সঠিকতা পরীক্ষা করতে সাহায্য করে। এই প্রযুক্তি ব্যবহার করে ডেভেলপাররা মডেল ক্লাসের মধ্যে ডেটা ভ্যালিডেশন সহজে সংজ্ঞায়িত করতে পারেন এবং ফর্ম সাবমিশন বা মডেল বাইন্ডিংয়ের সময় ডেটার সঠিকতা নিশ্চিত করতে পারেন।
Data Annotation একটি লেবেল বা অ্যাট্রিবিউটের মাধ্যমে মডেল ক্লাসে ডেটার বৈধতা সংজ্ঞায়িত করার একটি পদ্ধতি। Data Annotation ব্যবহার করে বিভিন্ন প্রকারের বৈধতা, যেমন Required, StringLength, Range, EmailAddress, ইত্যাদি, মডেল ক্লাসে সহজেই প্রয়োগ করা যায়।
Data Annotation-এর মাধ্যমে মডেল ক্লাসে অ্যাট্রিবিউট ব্যবহার করা হয় যা ডেটার বৈধতা এবং ফর্ম্যাট নির্ধারণ করে। এটি C# কোডের মধ্যে যুক্ত থাকে এবং একে অপরের সাথে সম্পর্কিত থাকে।
এই অ্যাট্রিবিউটটি একটি প্রোপার্টি বা ফিল্ডের জন্য প্রয়োজনীয়তা নির্দেশ করে, অর্থাৎ, ফিল্ডটি শূন্য হতে পারবে না।
public class Student
{
[Required(ErrorMessage = "Name is required")]
public string Name { get; set; }
}
এই অ্যাট্রিবিউটটি একটি স্ট্রিং ফিল্ডের দৈর্ঘ্য সীমাবদ্ধ করতে ব্যবহার করা হয়।
public class Student
{
[StringLength(50, ErrorMessage = "Name cannot be longer than 50 characters")]
public string Name { get; set; }
}
এই অ্যাট্রিবিউটটি একটি ফিল্ডের জন্য মানের সীমা নির্ধারণ করে। যেমন, সংখ্যার জন্য একটি নির্দিষ্ট পরিসীমা সেট করা।
public class Product
{
[Range(1, 100, ErrorMessage = "Price must be between 1 and 100")]
public decimal Price { get; set; }
}
এই অ্যাট্রিবিউটটি একটি স্ট্রিং ফিল্ডের জন্য বৈধ ইমেল ঠিকানা যাচাই করতে ব্যবহৃত হয়।
public class User
{
[EmailAddress(ErrorMessage = "Invalid Email Address")]
public string Email { get; set; }
}
এই অ্যাট্রিবিউটটি দুটি প্রপার্টির মান তুলনা করার জন্য ব্যবহৃত হয়, সাধারণত পাসওয়ার্ড এবং কনফার্ম পাসওয়ার্ড ক্ষেত্রের জন্য।
public class User
{
public string Password { get; set; }
[Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
}
Validation হল ডেটা যাচাই করার প্রক্রিয়া যা মডেল ক্লাসের ডেটা সঠিক এবং মেনে চলে কিনা তা নিশ্চিত করে। ASP.Net MVC-তে Model Validation এর মাধ্যমে, মডেল বাইন্ডিং-এর সময় Data Annotations দ্বারা নির্ধারিত শর্তাবলী অনুযায়ী ইনপুট যাচাই করা হয়। মডেল বৈধ হলে ডেটাবেসে সংরক্ষণ করা হয়, অন্যথায় ব্যবহারকারীকে ত্রুটি বার্তা দেখানো হয়।
কন্ট্রোলারে ModelState.IsValid
চেক করে ইনপুটের বৈধতা পরীক্ষা করা হয়। যদি মডেল বৈধ না হয়, তাহলে ডেটা আবার ভিউতে পাঠানো হয় এবং ত্রুটি বার্তা দেখানো হয়।
public class UserController : Controller
{
[HttpPost]
public ActionResult Register(User user)
{
if (ModelState.IsValid)
{
// ডেটা সেভ করুন
return RedirectToAction("Success");
}
else
{
// ত্রুটি বার্তা সহ ভিউ রিটার্ন করুন
return View(user);
}
}
}
ASP.Net MVC-তে আপনি Custom Validation তৈরি করতে পারেন, যেখানে আপনার নিজস্ব লজিক ব্যবহার করে ডেটা যাচাই করা হয়। এজন্য একটি কাস্টম ভ্যালিডেশন অ্যাট্রিবিউট তৈরি করতে হয়।
public class AgeValidation : ValidationAttribute
{
public override bool IsValid(object value)
{
int age = (int)value;
if (age < 18)
{
return false;
}
return true;
}
}
public class User
{
[AgeValidation(ErrorMessage = "Age must be 18 or older")]
public int Age { get; set; }
}
ASP.Net MVC-তে Data Annotation এবং Validation ব্যবহার করে আপনি সহজেই ইনপুট যাচাই করতে পারেন, যা অ্যাপ্লিকেশনের নিরাপত্তা এবং ডেটা সঠিকতার জন্য অপরিহার্য। Data Annotation দিয়ে মডেল ক্লাসে ভ্যালিডেশন শর্তাবলী নির্ধারণ করা যায় এবং ModelState ব্যবহার করে কন্ট্রোলার থেকে ইনপুট যাচাই করা যায়।
common.read_more