ورود

View Full Version : معماری وب سایت با mvc



soroush.elec
یک شنبه 08 دی 1392, 17:42 عصر
دوستان من می خواهم یک سایت با asp.net MVC بنویسم . در حالت کلی خود mvc در کنترل هایش یک نمونه از کلاس entity که DbContext را پیاده سازی کرده می سازد. من اما می خواستم در کنترل هایم یک نمونه singleton از این کلاس بگذارم . به طوری که از کلاسی که DbContext را پیاده سازی کرده فقط یک نمونه ساخته شود. می خواستم بدونم این کار مشکلی ایجاد نمی کند؟؟؟
سوال دیگر اینکه کلا استفاده از IOC هایی مثل ninject بجز موقع بالا اومدن سایت در performance سایت ایجاد کندی نمی کند؟؟

hakim22
یک شنبه 08 دی 1392, 18:37 عصر
برای اینکار از همان Ninject میتوانید استفاده کنید. باید در Constructor مربوط به کلاسهایی که با بانک کار (Repository)می کنند یک آرگومان از نوع dataEntity خودتون اضافه کنید.
وقتی برنامه را اجرا کنید Ninject کلاسهای مربوطه را درون Repository تزریق (Inject) میکند.

در یک پروژه ای با بیش از 18 هزار خط کد و 20 Area و حدود 220 جدول من مشکل خاصی از نظر performance مشاهده نکردم. (حجم پروژه تقریبا 250 مگابایت بود)

این درحالی بود که مدل کامل Repository و Services پیاده شده بود و از هم کاملا تفکیک شده بودند. (جدا سازی Repository در ساختن WebAPI بسیار موثر بود)

soroush.elec
یک شنبه 08 دی 1392, 19:17 عصر
جناب hakim22 از بابت توضیحات کاملتون بسیار سپاسگزارم.