با سلام
من در Mvc تازه كارم به نظر شما بهترين كار براي دريافت اطلاعات از كاربر بهتر است از تگ input استفاده كنم يا از Html.EditorFor@ ?
هركدام چه معايبي و چه مزايايي دارند ؟
با سلام
من در Mvc تازه كارم به نظر شما بهترين كار براي دريافت اطلاعات از كاربر بهتر است از تگ input استفاده كنم يا از Html.EditorFor@ ?
هركدام چه معايبي و چه مزايايي دارند ؟
Html.EditorFor یا Html.TextBoxFor و بقیه Html helper ها در نهایت تبدیل به input یا اچ تی ام ال خواهد شد فقط چون تحت نظر کامپایلر #c هست یا به عبارتی Strongly typed هستند کد تمیزتر و خطایابی بهتری به ما میدهد
در بعضی جاهها که نمتونیم از html helper ها استفاده کنیم مثل یک تابع جاوااسکریپتی , که ترکیبی از جاوا و کد css و کنترل htmlهست
باید بجای اون از تگهای html استفاده کنیم
از كداميك بهتر است استفاده كنيم مزاياي كدام بيشتر است
من تریجه میدم از Helper ها استفاده کنم. اما در بهضی موارد وقتی تگ ها شلوغ میشه کار کردن با Helper سخت میشه به همین دلیل در بعضی موارد از تگ های HTML مستقیما استفاده می کنم. در واقع من روشی که راحت تره و کد کمتری میگیره استفاده می کنم.
در نسخه ی جدید ASP Core بجای استفاده از HTML Helper از Tag Helper استفاده میشه. هر چند هر دو روش در دسترس هستند.
در اعتبار سنجي اطلاعات از كدام استفاده ميكنيد و نحوه اعتيار سنجي هنگام استفاده از input چگونه هستش . در اعتبار سنجي HtmlHelper ها مشكلي ندارم ولي چون من از inputها استفاده كرده ام در اعتبار سنجي inputها موندم .
اگر می خواهید از اعتبار سنجی خودکار استفاده کنید یا همون Microsoft.unobtrusive.validation باید از HTMLHelper استفاده کنید.
در غیر این صورت باید دستی ولیدیشن رو مدیریت کنید. یا از یکی از فریم ورکاهای جاوا اسکریپت استفاده کنید.
البته میشه ولیدیشنی که خودکار ساخته میشه رو هم شبیه سازی کرد و تگ Input استفاده کرد. کافی سورس یکی از صفحاتی که با ولیدیشن اتوماتیک ساخته شده رو ببینید.
یا نگاهی به داکیومنت کنید. ولی بهترین راه اینه که وقتی نیاز به ولیدیشن دارید از HTMLHelper استفاده کنید.