ورود

View Full Version : سوال: در مورد نحوه گرفتن اطلاعات از كاربر



سیروس مقصودی
پنج شنبه 22 تیر 1396, 06:51 صبح
با سلام

من در Mvc تازه كارم به نظر شما بهترين كار براي دريافت اطلاعات از كاربر بهتر است از تگ input استفاده كنم يا از Html.EditorFor@ ?
هركدام چه معايبي و چه مزايايي دارند ؟

ali_md110
پنج شنبه 22 تیر 1396, 07:33 صبح
Html.EditorFor یا Html.TextBoxFor و بقیه Html helper ها در نهایت تبدیل به input یا اچ تی ام ال خواهد شد فقط چون تحت نظر کامپایلر #c هست یا به عبارتی Strongly typed هستند کد تمیزتر و خطایابی بهتری به ما میدهد
در بعضی جاهها که نمتونیم از html helper ها استفاده کنیم مثل یک تابع جاوااسکریپتی , که ترکیبی از جاوا و کد css و کنترل htmlهست
باید بجای اون از تگهای html استفاده کنیم

سیروس مقصودی
پنج شنبه 22 تیر 1396, 11:32 صبح
از كداميك بهتر است استفاده كنيم مزاياي كدام بيشتر است

hakim22
پنج شنبه 22 تیر 1396, 12:12 عصر
من تریجه میدم از Helper ها استفاده کنم. اما در بهضی موارد وقتی تگ ها شلوغ میشه کار کردن با Helper سخت میشه به همین دلیل در بعضی موارد از تگ های HTML مستقیما استفاده می کنم. در واقع من روشی که راحت تره و کد کمتری میگیره استفاده می کنم.

در نسخه ی جدید ASP Core بجای استفاده از HTML Helper از Tag Helper استفاده میشه. هر چند هر دو روش در دسترس هستند.

سیروس مقصودی
پنج شنبه 22 تیر 1396, 12:41 عصر
در اعتبار سنجي اطلاعات از كدام استفاده ميكنيد و نحوه اعتيار سنجي هنگام استفاده از input چگونه هستش . در اعتبار سنجي HtmlHelper ها مشكلي ندارم ولي چون من از inputها استفاده كرده ام در اعتبار سنجي inputها موندم .

hakim22
جمعه 23 تیر 1396, 09:21 صبح
اگر می خواهید از اعتبار سنجی خودکار استفاده کنید یا همون Microsoft.unobtrusive.validation باید از HTMLHelper استفاده کنید.
در غیر این صورت باید دستی ولیدیشن رو مدیریت کنید. یا از یکی از فریم ورکاهای جاوا اسکریپت استفاده کنید.

البته میشه ولیدیشنی که خودکار ساخته میشه رو هم شبیه سازی کرد و تگ Input استفاده کرد. کافی سورس یکی از صفحاتی که با ولیدیشن اتوماتیک ساخته شده رو ببینید.
یا نگاهی به داکیومنت کنید. ولی بهترین راه اینه که وقتی نیاز به ولیدیشن دارید از HTMLHelper استفاده کنید.