mvc

سوال شده توسط: pedram norozi

تاریخ ثبت: ۱۴۰۰/۰۷/۲۹

بازدید: 180

پاسخ: 1

تگ: Asp.net Core


سلام و عرض ادب اقای اشرافی عزیز. من تازه از لاراول به asp قوچ کردم و دو چیز رو نمیتونم درک کنم : اول اینکه فرض کنیم میخوایم category ها رو داینامیک کنیم , وقتی بخش index رو میخوایم تکمیل کنیم توی کنترلر بهش میگیم مدل ویو چی باشه مثلا لیستی از کتگوری ها , ولی وقتی میخوایم بخش add رو تکمیل کنیم , توی کنترلر مدلش رو مشخص نمیکنیم . چرا ؟ چطور asp میفهمه ؟ ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- سوال دومم: توی لاراول وقتی قرار بود یه مقداری رو از ویو به کنترلر بفرستیم باید تو ویو مشخص میکردیم مثلا میخوایم یه تگ a رو بفرستیم به اکشن index و مقدار id هم با خودش ببره , توی لاراول :href=action(index , id) اما توی asp اینکارو نمیکنیم و فقط تو کنترلر میگیم id هم دریافت کن و تگه متد پست باشه خودش دریافت مینکنه خود به خود !!!!!! چطور کار میکنه ؟ ببخشید سوال طولانی شده.
پاسخ ها
user

محمد اشرافی

سلام شب اتون بخیر باشه 

 1 - ما توی View مشخص میکنیم که مدل این View اینی ه که گذاشتیم مثلا توی View افرودن گروه میگیم مدل تو CreateCategoryViewModel هست و اگر توی Controller یه مدل با این جنس براش ارسال کنیم مقادیرش پر میشه و اگر چیزی براش ارسال نکنیم مدل اش Null ه ، و این مدل Null به چه درد ما می خوره ؟ 

به این درد می خوره که سمت View به ما Intelisens میده تا Input هامون رو راحت بسازیم و دیتایی که ارسال می کنیم سمت سرور هم از همین جنس می تونه باشه ، در واقع با TagHelper ها میاد name و id به input ها میده

2 - ببینید توی RazorPage اگر Form ای داشته باشیم که action بهش نداده باشیم به صورت پیشفرض action اش میشه همین صفحه جاری که الان توش هستیم ، ولی برای تگ a به این شکل نیست یا می تونید href بهش بدین یا از TagHelper ها استفاده کنید مثلا اون مثالی که شما توی php زدید توی asp به این شکل میشه : 

href="@Url.Action("Index","Home",new {id=1})"

یا 

asp-controller="Home" asp-action="Index" asp-route-id="1"

یا توی RazorPage :

asp-page="Index" asp-route-id="1"

اگر جوابتون رو نگرفتید لطفا سوالتون رو به یه شکل دیگه بپرسید تا دقیق تر متوجه شم

برای ثبت پاسخ باید خود شوید

محبوب ترین مقالات