Ich habe Prism v4 heruntergeladen und das Installationsprogramm ausgeführt. Ich ging in das Verzeichnis und lief die beiden folgenden Batch-Dateien:Prism v4: Einheit oder MEF?
- Nur Desktop - Offene Modularität Mit Mef QuickStart.bat
- Nur Desktop - Offene Modularität Mit Unity QuickStart.bat
Als ich kompilieren Sie diese Anwendungen, sehe ich keinen wirklichen Unterschied. Ich habe nach MEF vs Unity gesucht und ich habe einige Vor-/Nachteile gefunden, aber nichts, was spezifisch sagt, ob man "besser" ist (und ich weiß, dass es subjektiv ist), wenn man es in Prism benutzt. Ich denke, wenn ich meine Anforderungen aufliste, kann mich jemand auf die richtigen Technologien hinweisen (auch wenn es nicht Prism 4 ist).
- Die Anwendung ist in WPF (NICHT Silverlight) geschrieben werden.
- Die Hauptanwendung wird extrem dünn sein.
- Die Hauptanwendung verwendet einen Webdienst, um das Menü der "Apps/Module" zu erstellen, auf die eine Person Zugriff hat.
- Die "Apps/Module" werden vollständig in anderen verwalteten Bibliotheken enthalten sein.
- Die Hauptanwendung ruft Views und Viewmodels durch Reflektion in diese DLLs.
- Die Hauptanwendung sollte Dienste für die Protokollierung usw. in diese "Apps/Module" einspeisen.
Zum Beispiel:
- Viewonly Adresseintrags
Alle Artikel Adresse verwandt sind innerhalb Address.dll:
Ein grundlegender Benutzer die Optionen haben könnte.
- Neue Adresse Rekord
- Adresseneintrag öffnen (update/delete)
- Benutzer verwalten
Alle Artikel Adresse verwandt sind:
Eine erweiterte Benutzer die Optionen haben könnten in Address.dll.
Alle Elemente, die Sie verwalten, sind in Admin.dll. Die App sollte eigentlich keine dieser DLLs referenzieren, ich plane, in sie zu reflektieren, so dass, wenn es 100 verschiedene Module gibt und ein Benutzer nur Zugriff auf 2 von ihnen hat, nur 2 von ihnen heruntergeladen und verwendet werden. Während ein Benutzer, der Zugang zu 10 von ihnen hat, diese 10 bekommt.
Ich habe bereits die Download-DLL über WebService gelöst. :)
Verwenden von 2.1 von Prism mit Unity und WPF ... war bis jetzt glücklich, habe MEF nicht persönlich benutzt, obwohl ... –
Womit bist du am Ende gegangen? Ich schaue mir ein ähnliches Scoped-Projekt an, so dass dein Input großartig wäre. – John
@ John: Pure MEF. –