Patterns und Practices für die Softwareentwicklung in .NET: die Enterprise Library. Teil 3: Unity und der Service Locator in Silverlight

Von Mario Meir-Huber Autor Feed 24. January 2011 14:49

“Für viele Vorgänge, welche man tagtäglich in der .NET Entwicklung benötigt gibt es bereits viele hilfreiche Libraries. In dieser Serie werden best practices vom Patterns&Practices Team vorgestellt. Alle diese Beiträge können durch den Tag “p&p” abgerufen werden.”

In den vorigen Beiträgen habe ich den Service Locator und Unity vorgestellt. Dies war rein auf “Standard” .NET Anwendungen bezogen. In Silverlight ist es nicht möglich, eine XML-basierte Konfiguration zu verwenden. Der Grund ist das Silverlight den Namespace System.Configuration derzeit (Version 4) nicht kennt. Daher muss man Konfigurationen per Quellcode regeln. Auf Codeplex gibt es einige Open-Source Projekte, welche dies auch lösen doch wollen wir uns hier Unity in der Reinform ansehen. Es wäre auch denkbar das man sich seinen eigenen Configuration-Reader schreibt. Doch der Aufwand dürfte wohl kaum in Relation zu den Output stehen.

Eine Instanz wird über “RegisterInstance” registriert, welches auch im Unity für das .NET Framework funktioniert. Dies habe ich jedoch nicht vorgestellt da wir hier ohnehin XML für die Konfiguration verwendet haben.

Microsoft.Practices.Unity.UnityContainer uic = new Microsoft.Practices.Unity.UnityContainer();

uic.RegisterInstance(typeof(IImportService), new ImportService());
uic.RegisterInstance(typeof(ILanguageService), new LanguageService());
uic.RegisterInstance(typeof(IPageService), new PageService());
uic.RegisterInstance(typeof(IEventService), new EventService());

UnityServiceLocator usl = new UnityServiceLocator(uic);
ServiceLocator.SetLocatorProvider(() => usl);

Somit ist Unity auch in Silverlight einfach verwendbar.

Add comment

  Country flag

biuquote
  • Comment
  • Preview
Loading

Datenschutzhinweis: Sie stimmen durch "Kommentar speichern" der Speicherung Ihrer Angaben durch Microsoft Österreich für die Beantwortung der Anfrage zu. Sie erhalten dadurch keine unerwünschten Werbezusendungen. Ihre Emailadresse wird auf Ihren Wunsch dazu verwendet Sie über neue Kommentare zu informieren.

Microsoft respektiert den Datenschutz. Datenschutz & Cookies

Datenschutz & Cookies · Nutzungsbedingungen · Impressum · Markenzeichen
© 2013 Microsoft. Alle Rechte vorbehalten · BlogEngine.NET 2.7.0.0 · Diese Website wird für Microsoft von atwork gehostet.
powered by atwork