Html.Textbox এবং Html.Textbox for এর মধ্যে পার্থক্য কী?
Html.Textbox এবং Html.Textbox for এর মধ্যে পার্থক্য কী?
উত্তর:
শেষ পর্যন্ত তারা দু'জনই একই HTML তৈরি করে তবে Html.TextBoxfor () Html.TextBox হিসাবে নেই তেমন দৃ strongly়ভাবে টাইপ করা হয়।
1: @Html.TextBox("Name")
2: Html.TextBoxFor(m => m.Name)
উভয় উত্পাদন করবে
<input id="Name" name="Name" type="text" />
সুতরাং ব্যবহারের ক্ষেত্রে এর অর্থ কী?
সাধারণত দুটি জিনিস:
TextBoxFor
করা আপনার জন্য আপনার ইনপুট নাম উত্পন্ন করবে। এটি সাধারণত সম্পত্তির নাম তবে জটিল ধরণের বৈশিষ্ট্যের জন্য আন্ডারস্কোর যেমন 'গ্রাহক_নাম' অন্তর্ভুক্ত থাকতে পারেTextBoxFor
সংস্করণ ব্যবহার করে আপনাকে সংকলন সময় পরীক্ষা করতে সহায়তা করবে। সুতরাং আপনি যদি আপনার মডেলটি পরিবর্তন করেন তবে আপনার দর্শনগুলিতে কোনও ত্রুটি আছে কিনা তা আপনি পরীক্ষা করতে পারেন।সাধারণত এমভিসি 2 তে যুক্ত হওয়া এইচটিএমএল হেল্পারগুলির দৃ typ়ভাবে টাইপিত সংস্করণগুলি ব্যবহার করা আরও ভাল অনুশীলন হিসাবে বিবেচিত হয় ।
TextBoxFor
একটি নতুন MVC ইনপুট MVC2 চালু এক্সটেনশান।
নতুনভাবে দৃ strongly়ভাবে টাইপ করা এক্সটেনশনের মূল সুবিধাটি রানটাইমের পরিবর্তে সংকলন সময়ে কোনও ত্রুটি / সতর্কতা দেখানো।
এই পৃষ্ঠাটি দেখুন।
http://weblogs.asp.net/scottgu/archive/2010/01/10/asp-net-mvc-2- strongly-typed-html-helpers.aspx
IMO মূল পার্থক্য হ'ল পাঠ্যবক্সটি দৃ strongly়ভাবে টাইপ করা হয় না। পাঠ্যবক্সফোর একটি ল্যাম্বডাকে একটি প্যারামিটার হিসাবে গ্রহণ করুন যা সাহায্যকারীকে মডেলটির উপাদানগুলির সাথে টাইপযুক্ত দৃশ্যে ব্যবহার করতে বলে।
আপনি উভয়ই একই জিনিস করতে পারেন, তবে আপনার যখন টাইপ করা ভিউ এবং সম্ভব হয় তখন টেক্সটবক্সের জন্য ব্যবহার করা উচিত।
Html.TextBox amd এইচটিএমএল.ড্রপডাউনলিস্টগুলি দৃ .়ভাবে টাইপ করা হয় না এবং এজন্য তাদের দৃ strongly়ভাবে টাইপ করা দর্শন প্রয়োজন হয় না। এর অর্থ হ'ল আমরা যে নামটি চাই তা হার্ডকোড করতে পারি। অন্যদিকে, এইচটিএমএল.টেক্সটবক্সফোর এবং এইচটিএমএল.ড্রপডাউনলিস্টফোর্ড দৃ strongly়ভাবে টাইপ করা হয়েছে এবং এর জন্য দৃ strongly়ভাবে টাইপ করা ভিউ দরকার হয় এবং ল্যাম্বডা এক্সপ্রেশন থেকে নামটি অনুমান করা হয়।
দৃ typ়ভাবে টাইপ করা এইচটিএমএল সহায়করাও সংকলনের সময় পরীক্ষা করে।
যেহেতু, আসল সময়ে, আমরা বেশিরভাগই দৃ strongly়ভাবে টাইপ করা ভিউ ব্যবহার করি, তাদের সমকক্ষগুলির উপরে Html.TextBoxfor এবং Html.DropDownListfor ব্যবহার করতে পছন্দ করি।
যাই হোক না কেন, আমরা এইচটিএমএল.টেক্সটবক্স এবং এইচটিএমএল.ড্রপডাউনলিস্ট বা এইচটিএমএল.টেক্সটবক্সফোর্ড এবং এইচটিএমএল.ড্রপডাউনলিস্টফোর্ড ব্যবহার করি, শেষ ফলাফলটি একই, তারা একই HTML তৈরি করে।
দৃV়ভাবে টাইপ করা এইচটিএমএল সহায়কগুলি এমভিসি 2 এ যুক্ত করা হয়।