שימוש ב Unity באפליקציית ווב – איך לרשום רכיבים כסינגלטון בצורה נכונה פר בקשת HTTP

יום שבת, דצמבר 17, 2011

Unity הינו רכיב IOC Container מאוד שימושי, ואחד הדברים הראשונים שעושים באפליקציית asp.net mvc זה להשתמש ב-Unity על מנת לבצע רישום ושימוש ברכיבים שונים. לדוגמא, אם רוצים לרשום DbContext של EntityFramework לשימוש עתידי, אפשר לעשות זאת בשתי דרכים קלאסיות. רישום רגיל: container.RegisterType<DbContext>(); ורישום כסינגלטון: container.RegisterType<DbContext>(new ContainerControlledLifetimeManager()); כך ש-Unity מנהל בצורה שונה את ה”חיים” של הרכיב, וכשמבקשים את הרכיב הנ”ל ע”י: container.Resolve<DbContext>(); נקבל תוצאות שונות על פי סוג הרישום. רישום רגיל...
תגיות: , ,
2 תגובות