PDA

View Full Version : حرفه ای: عدم سازگاری Scaffolding با ViewModel !?



hrsaberi
دوشنبه 14 دی 1394, 12:37 عصر
سلام
فرض کنید جدولی داریم با نام tbl_Customer که به model اضافه شده. از روی این کلاس یک ویو مدل با نام CustomerViewModel (برای اینکه منطق MVC حفظ بشه! ) ایجاد می کنیم.

یه کنترلر با نام CustomerController توسط Scaffolding ابجاد می کنیم که تمام فرم های لازم رو ایجاد کنه.

فرم ها ساخته میشن. مشکل اینجاست که در شی رو به این صورت میاره db.CustomerViewModel.tolist() خوب طبعا خطا میده.

چه باید کرد زمانیکه نمی خواهیم مستقیم از مدل بخونیم و ViewModel جای مدل رو می گیره ؟
اگه قرار باشه Scaffolding با ViewModel کار نکنه پس عملا در 90 درصد مواقع کاربرد نداره!!!!!

hakim22
دوشنبه 14 دی 1394, 14:50 عصر
ابزار Scaffolding برای شروع کار هست. یعنی قرار نیست کدها رو بجای شما بنویسیه فقط میخواد یک قسمت از کد رو بسازه و شما باید اصلاحات رو مطابق نیاز خودت اعمال کنید.

شما میتوانید کدهای تولید کننده ی Scaffolding رو تغییر بدید. این کدها با T4 ساخته شده و قابل ویرایش و شخصی سازی هست.

همچنین در بسیاری موارد مدل ها و ویو مدل ها با چیزی در Scaffolding تولید میشه فرق داره. هر مدلی شرایط خاصی مطلبه و کنترلرها هم لزما همیشه به یک شکل نیستند.
این فقط یک نقطه ی شروع هست و نیاز به اصلاحات دارد.