PDA

View Full Version : نحوه ی نوشتن کلاس های poco



Arezooparsafar86
شنبه 07 اردیبهشت 1392, 12:09 عصر
سلام دوستان،میشه در مورد نحوه ی نوشتن کلاس های POCO در روش CodeFirst چند تا مثال بزنید و یکم توضیح بدین؟همینطور در مورد اینکه چرا بعضی property ها رو virtual تعریف میکنیم بعضی رو نه،یا اینکه چرا بعضی جا ها از ICollection استفاده میکنن بعضی جاها از IList؟

gwbasic
یک شنبه 08 اردیبهشت 1392, 16:29 عصر
- کلاسهای POCO کلاسهای ساده و معمولی هستند و محدودیت خاصی ندارند با کمی جستجو در گوگل مثالهای متعددی می تونید پیدا کنید
- پراپرتی هایی که Virtual تعریف می شوند به EF این امکان را می دهد که از روی آن پروکسی تعریف کند و مورد استفاده آن Lazy Loading هست. بطور مثال فرض کنید کلاس به نام Teacher دارین که دارای پراپرتی ای از لیست Student دارد. هنگام کوئری زدن روی Teacher لیست Student ها هم load می شود که در برخی موارد مطلوب نیست و شما فقط Teacher را نیاز دارید. برای این منظور Student را Virtual تعریف می کنید تا EF لیست Student را load نکند و در صورت نیاز با سازوکار مربوط اقدام به load دانش آموزان می کنید. به این بارگذاری موقع نیاز Lazy loading گفته می شود که توسط Virtual امکانپذیر می شود.
- مثال بالا را فرض کنید که Teacher مجموعه ای از Student را دارد EF برای شما ICollection را پیشنهاد می کند مزیت interface این است که implement های متفاوتی را می توان در نظر گرفت بنابراین شما برحسب نیاز می تونید Collection یا List و یا هر کلاسی که ICollection را پیاده سازی کرده استفاده کنید. مزیت List را هم نسبت به Collection حتما می دونید یکسری متد اضافه دارد مثل IndexOf و Insert و RemoveAt. حالا دست شما باز است که از کدام استفاده کنید.

mo.esmp
پنج شنبه 26 اردیبهشت 1392, 01:52 صبح
- کلاسهای POCO کلاسهای ساده و معمولی هستند و محدودیت خاصی ندارند
کلاسهای POCO در واقع Business Objectهای شما هستند که شامل اتلاعات، اعتبارسنجی و هر Business Logicکی که بخواین استفاده کنین و چیزی که در کلاسهای POCO وجود نداره متدهای Persistence هست به این معنا که در این کلاسها شما نمیتونی متدی استفاد کنی اتلاعات رو تو دیتابیس بنویسه یا اتلاعات رو از دیتابیس بگیره.