2010-10-21 2 views
64

Czy ktoś wie, skąd pochodzi Microsoft.Practices.ServiceLocation? Jest to przestrzeń nazw i plik dll używany w MS Enterprise Library. Wprawdzie jest to bardzo prosta biblioteka dll z zaledwie kilkoma klasami (używając reflektora), ale nie mogę znaleźć opublikowanego kodu źródłowego dla niej. Nie ma go w projekcie Enterprise Library, a nie w projekcie Unity.Skąd pochodzi Microsoft.Practices.ServiceLocation?

Czy ktoś wie, czy kod źródłowy został opublikowany i gdzie? A także dlaczego nie jest częścią Jedności? Czy jest używany gdziekolwiek indziej?

+0

Inna odpowiedź związana z tym pytanie: http://stackoverflow.com/a/25728456 – Believe2014

Odpowiedz

60

Pochodzi z: https://github.com/unitycontainer/commonservicelocator

Z opisu projektu:

Wspólna obsługa Locator biblioteka zawiera wspólny interfejs dla lokalizacji usług które programiści i ramowe mogą odwoływać. Biblioteka zapewnia abstrakcję nad kontenerami IoC i lokalizatorami serwisowymi . Korzystanie z biblioteki umożliwia aplikacji pośredniej dostęp do funkcji bez odwoływania się do trudnych referencji . Istnieje nadzieja, że ​​przy użyciu tej biblioteki aplikacje innych producentów będą mogły korzystać z IoC/Service Location bez wiązania do konkretnej implementacji .

Ta abstrakcja jest realizowana przez kilka frameworków IoC, a Jedność jest jedną z nich. jednak Unity nie jest właścicielem tego projektu.

ten sposób StructureMap, na przykład, zapewnia realizację tych clases, więc innych struktur (takich jak Prism z wzorami & praktyk) może łatwo współpracować z innymi ramami MKOl i nie może być zobowiązany do Unity sama.

+1

Zauważ, że nie tylko Prism ale Enterprise Sama biblioteka jest teraz niezależna od kontenera i może działać z innymi kontenerami IoC. –

+2

Miałem ten sam błąd, ale miałem bibliotekę Enterprise 4.1 zainstalowaną na moim komputerze, a mój kolega deweloper, który dodał odniesienie do biblioteki Enterprise do naszego wspólnego rozwiązania, miał bibliotekę Enterprise w wersji 5. Odprawiono więc wersję Enterprise library. –

+0

Zastanawiam się, dlaczego zespół firmy Microsoft nie uwzględnił tego w wydaniu MSEL ... – Andry