Frage

Ich versuche, die Zwiebelarchitektur von J. Palermo anzuwenden, aber ich habe ein paar Dinge, mit denen ich kämpfe.

Ich habe ein paar Teile und ich weiß nicht genau, wo ich diese setzt.

  • Ich habe eine Plugin-Engine, die ein Verzeichnis liest, und bestimmen, welche Dinge, die Sie laden, um zu laden, um zu tun
  • haben einige Ressourcendateien mit Übersetzungen, die in mehreren Projekten verwendet werden.Wo sollte ich diese Dateien setzen?
  • Ich habe einige Attribute, die im gesamten System verwendet werden.Wo soll ich diese setzen?
  • Ich habe auch zwei "Basis" -Controller, einige Standardergebnisse und Ansichten.Wo soll ich diese setzen?

    Alle diese Elemente werden in mehreren Projekten verwendet, sodass ich die Artikel an einem zentralen Punkt setzen möchte.

    Meine aktuelle Lösungstruktur looke so:

    • project.core (enthält die Domänenobjekte und Schnittstellen der Repositorys)
    • project.infrastructure (ist die Implementierung des Kerns)

      Ich verwende MVC2.

War es hilfreich?

Lösung

Ich glaube nicht, dass es etwas ist, das die Zwiebelarchitektur von sich selbst lösen würde. Was ich tun würde, ist, all diese Gegenstände in ein oder mehrere Projekte in eine andere Lösung zu bringen und Nuget-Pakete aufzubauen, die es mir ermöglichen, sie überall bereitzustellen, wo ich sie brauchen würde. Auf diese Weise hätte ich Elemente wie Ihre Basisprogramme in Ihrem MVC-Projekt und Plugin- / Translation Sachen in Ihrem Infrastrukturprojekt eingesetzt.

Auf diese Weise, wenn Sie diese Elemente in Ihren neu erstellten Projekten zur Verfügung stellen müssen, müssen Sie das Paket einfach erneut bereitstellen.

Diese Elemente werden unabhängig, in einem zentralen Punkt (einem neuen SLN) gespeichert und verfügen über einen eigenen Release-Zyklus!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top