PDA

View Full Version : پاس دادن چندین مدل به یک ویو



mona11
یک شنبه 05 مرداد 1393, 13:19 عصر
برای اینکه به یک ویو چندین مدل پاس بدم یک راهش اینه که از viewModel استفاده کنم که مقالش به طور کامل اینجا (http://www.dotnettips.info/post/1243/%D9%86%D8%AD%D9%88%D9%87-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-viewmodel-%D8%AF%D8%B1-asp-net-mvc)شرح داده شده...
آیا راه دیگه ای هم وجود داره که راحت تر یا سریعتر باشه؟

مورد دوم اینکه با viewbag چطور میشه مدل پاس داد؟من فکر میکردم با viewbag فقط میشه string یا int پاس داد. و بعد از اینکه با viewbag مدل رو پاس دادیم،در ویو چطور دریافتش کنیم :)
شرمنده زیاد حرف زدم ;)

hadi0x7c7
یک شنبه 05 مرداد 1393, 15:12 عصر
الان مشکل شما با ویوو مدل چی هست؟ تا اونجایی که من میدونم استفاده از ViewBag کاملا باید حذف بشه و برای کوچک ترین کار باید یه ویوو مدل بسازی و به صفحه پاس بدی. پروژه بزرگ شد نترس :دی

mona11
یک شنبه 05 مرداد 1393, 16:36 عصر
خب زمان میبره دیگه...تا بیای یه کلاس دیگه بسازی و براش پراپرتی تعریف کنی و پاس بدی به مدل،و بدتر اینکه تعداد این کلاسها چقدر زیاد میشه اگه بخوای واسه هر کاری یه ویومدل بسازی؟اصن گیج کننده است.طرف نمیفهمه بالاخره باید با model کار کنه یا با viewmodel سرو کله بزنه :))

hadi0x7c7
یک شنبه 05 مرداد 1393, 18:19 عصر
منم چون تازه کار میکنم به همین مشکل برخوردم حجم کد نویسی خیلی میره بالا! بهتره از افزونه Resharper و همچنین T4MVC و AutoMapper کار کنی شاید کارت یکم راحت تر بشه.

mona11
یک شنبه 05 مرداد 1393, 19:07 عصر
ری شارپر باز از کجا پیداش شد :)))

alireza_rashvand
دوشنبه 06 مرداد 1393, 17:52 عصر
اینجا (http://www.dotnettips.info/post/815/asp-net-mvc-11#comment-2800)رو نگاه کنید بد نیست...

bahareh1368
دوشنبه 06 مرداد 1393, 18:39 عصر
برای اینکه به یک ویو چندین مدل پاس بدم یک راهش اینه که از viewModel استفاده کنم که مقالش به طور کامل اینجا (http://www.dotnettips.info/post/1243/%D9%86%D8%AD%D9%88%D9%87-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-viewmodel-%D8%AF%D8%B1-asp-net-mvc)شرح داده شده...
آیا راه دیگه ای هم وجود داره که راحت تر یا سریعتر باشه؟

مورد دوم اینکه با viewbag چطور میشه مدل پاس داد؟من فکر میکردم با viewbag فقط میشه string یا int پاس داد. و بعد از اینکه با viewbag مدل رو پاس دادیم،در ویو چطور دریافتش کنیم :)
شرمنده زیاد حرف زدم ;)

تو كنترلر اينجوري مقدار را بايد قرار بدي :

Var users=db.users.ToList();
viewBag.userlist=users;


حالا در ويو كافيه ازش استفاده كني :

Var list=viewbag.userlist;

mona11
سه شنبه 07 مرداد 1393, 22:54 عصر
راه استانداردش استفاده از ویو مدل هست که در این پست (http://barnamenevis.org/showthread.php?462547-join-2-%D8%AC%D8%AF%D9%88%D9%84)به کمک آقا هادی عزیز حلش کردیم و به نتیجه رسیدیم.