Wie kann ich ein ASP.NET-Projekt in verschiedene Editionen mit verschiedenen moduleen aufteilen

Angenommen, es gibt ein ERP-System, das die folgenden modulee enthält:

  1. Personal
  2. time und Anwesenheit
  3. Lohn-und Gehaltsabrechnung
  4. Sozialhilfe
  5. Ausbildung

Dieses ERP-System wird mit einer überlagerten Architektur von ASP .NET-Webformularen (DAL, BLL, BVL, GUI) erstellt. Das Backend ist SQL server und wird über EF zugegriffen. Es gibt eine database, die alle Tabellen aller modulee hält, und viele dieser Tabellen sind miteinander verwandt. Es gibt ein GUI-Projekt für alle modulee. Aber jedes module wird in einen separaten Ordner gestellt.

Mein Ziel ist es, verschiedene Editionen mit verschiedenen moduleen zu erstellen. Zum Beispiel (Personal + time und Anwesenheit + Abrechnung) oder (Personal + Lohn- und Gehaltsabrechnung) usw.

Die Frage ist: Gibt es einen Führer oder eine Best-Practice, um dieses Ziel zu erreichen? Wie man den veröffentlichten Code beibehält, wie man DB-Tabellen isoliert, die nicht benötigt werden?

Setzen Sie den modulecode in verschiedene class libs und verwenden Sie die Abhängigkeitsinjektion, um die modulee zusammen zu binden.

Sie können 1 database, separate classnbibliotheksprojekte für jedes module und eine einzelne Präsentationsschicht haben.