שימוש ב 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 תגובות

Mef or Unity?

יום שלישי, ינואר 25, 2011

  MEF or Unity? Recently I started developing a new Silverlight LOB project which required the assistance of Prism (now that it reached v4 and actually works fairly ok with MVVM I’m using it more often). Prism now supports both Unity and MEF, and very actively refuses to take sides.. MEF and Unity are similar in many ways, and many people like to think of MEF as yet another IOC Container. Although this line of thought helps us to see the big-picture, it is a bit wrong; MEF is targeted mainly toward composition,...
תגובה אחת