- اگر از
SmObjectFactory استفاده میکنید، Container آن با ObjectFactory یکی نیست یا به عبارتی ObjectFactory اطلاعی در مورد تنظیمات کلاس سفارشی
SmObjectFactory ندارد. بنابراین دیگر نباید از ObjectFactory قدیمی استفاده کنید.
- من
SmObjectFactory را از این جهت اضافه کردم، چون قرار است ObjectFactory را در نگارش بعدی استراکچرمپ حذف کنند. همین مساله سبب بروز مشکلات زیادی در مدیریت Containerهای آن میشود؛ چون هر Container مشخصی، وهلههای مجزا و تنظیمات مجزایی را خواهد داشت و در این حالت بسیاری با مدیریت برای مثال یک وهله از IUnitOfWork در طول یک درخواست مشکل پیدا میکنند. وهلهی a از IUnitOfWork توسط container 1 با وهله مشابهی از آن توسط container 2 یکی نیست. حتی اگر مدیریت طول عمر container 1
به درستی انجام نشود، باز هم به چندین وهله از container 1
خواهیم رسید.