Ich habe ein ASP.net-Web-API 2 mit Identity 2.0-Authentifizierung in einer Lösung erstellt, sodass externe Anbieter Daten in unsere Datenbank zur Analyse ablegen können. Ich habe eine andere MVC-Lösung erstellt, um eine Verbindung zu derselben Identity-Datenbank herzustellen und die Benutzer für die Web-API zu verwalten, sodass unsere internen Benutzer Benutzer hinzufügen und löschen können. Mein Chef sagte mir jedoch heute, dass es am besten sei, das UI-Management (MVC) innerhalb des Web-API-Projekts (Not Solution) zu erstellen. Ich bin perplex, ist das der beste Weg oder halten Sie die beiden Lösungen getrennt?UI innerhalb eines ASP.net-API-Projekts
Antwort
Dieser Anwendungsfall erfordert aufgrund der Unterschiede in der NFRs eine separate Webanwendung.
Die API ist extern. Die MVC-Benutzeroberfläche ist intern. Daher haben sie unterschiedliche Sicherheitsanforderungen - die MVC-App ist empfindlicher und muss möglicherweise über verschiedene Mittel gesichert werden, z. AD-Integration. Die API muss in Ihrer DMZ gespeichert sein, damit sie für die Öffentlichkeit zugänglich ist, während die MVC-Anwendung in einem internen Netzwerk verwendet werden kann.
Die API ist für den öffentlichen Verbrauch vorgesehen und kann daher unterschiedliche Verfügbarkeitsanforderungen aufweisen. Die API ist wahrscheinlich 24/7/365, während die interne App zur Wartung heruntergefahren werden kann, ohne dass sich dies auf andere als Ihre Administratoren auswirkt. Die API muss wahrscheinlich so ausgelegt sein, dass sie skalierbar ist - was den Lastausgleich bedeutet - während die Admin-Site möglicherweise auf einem einzelnen Webserver ausgeführt werden könnte und daher statusbehaftet sein könnte, ohne IP-Klebrigkeit zu erfordern.
Der Einsatzplan ist anders. Die API wird geändert, wenn sich die Systemfunktionen ändern. Die MVC-Benutzeroberfläche wird nur geändert, wenn sich die Verwaltungsfunktionen ändern. Vielleicht möchten Sie in der Lage sein, ein Upgrade durchzuführen, während Sie das andere in Ruhe lassen.
Es gibt keinen Grund, diese Anwendungen zusammen zu sperren, und es gibt viele Gründe, dies nicht zu tun. Es ist definitiv nicht die beste Methode, sie zu kombinieren.
- 1. Aufruf eines Testfalls innerhalb eines Testfalls in SOAP UI
- 2. TYPO3 Extbase - Abfrage nur Datensätze innerhalb eines bestimmten UI-Bereichs
- 3. Sammeln von Daten aus UI-Elemente innerhalb eines UITableViewCell
- 4. Angular UI-map Mehrfacher Aufruf einer Schaltflächenfunktion innerhalb eines uiMapInfoWindow
- 5. JQuery UI Fangen mit einem Raster innerhalb eines Elements
- 6. Python - auf Ganzzahlen innerhalb eines ui Textfelds überprüfen
- 7. Wie man einen Standard festlegen <ui-view> innerhalb eines anderen <ui-view>
- 8. Array innerhalb eines Arrays innerhalb eines Objekts? .?
- 9. UI-Testfunktionen innerhalb der Testklasse
- 10. UI-Router Standardansicht innerhalb div
- 11. Material UI nächste - Styling Text innerhalb ListItemText
- 12. Link funktioniert nicht innerhalb UI wählbar
- 13. Erstellen eines UI-Designers
- 14. ui-Gitter innerhalb ui-Gitter in einer Vorlage Zelle - AngularJS
- 15. ui-Gitter innerhalb ui-tabs mit ng-Repeater
- 16. Bewerben jquery in Verbindung innerhalb eines Iframes
- 17. Typings für Unterordner innerhalb eines Stammverzeichnisses index.d.ts
- 18. Update-Panel innerhalb eines UserControl innerhalb eines Repeaters innerhalb eines anderen UpdatePanels
- 19. Wie setze ich Modellvariablen innerhalb eines Abnahmetests?
- 20. Erstellen eines UI-Drag & Drop-Generators
- 21. Header innerhalb eines div innerhalb eines Anchor-Tags
- 22. Zugriff auf aktuelle Seite innerhalb eines Blocks innerhalb eines StreamFields
- 23. Verwenden Sie dies innerhalb eines Javascript IIFE innerhalb eines Objekts
- 24. Open Semantic UI Kalender innerhalb einer Schleife
- 25. Wie benutzerdefinierte Richtlinie innerhalb ui-Bootstrap-Tooltip
- 26. WPF Validierung innerhalb UI Virtualized ListBox
- 27. jQuery UI - Menü innerhalb von iframe
- 28. Material-UI: Kann nicht innerhalb Tab
- 29. So verwenden Interpolation innerhalb ui-sref
- 30. fixed header innerhalb von material-ui LeftNav