Ich habe das Design der abstrakten Datenbank der berühmten Open-Source-Community CommunityServer (CS) gelernt, unabhängig nachgedacht, das Problem aus einer philosophischen Perspektive betrachtet und weiter abstrahiert und schließlich eine sehr abstrakte universelle Datenbank und eine universelle Datenzugriffsschicht entworfen.
Die Hauptvorteile sind:
1) Speichern Sie alle Datenentitäten und Beziehungen zwischen Entitäten über zwei abstrakte Tabellen.
2) Die Felderweiterungsanforderungen jeder Datenentität werden durch zwei erweiterte Feldentwurfsmethoden realisiert. Die erweiterten Felder unterstützen Sortier- und Suchfunktionen auf Datenbankebene und unterscheiden sich nicht wesentlich von gewöhnlichen Feldern. Sie fügen lediglich eine Funktion hinzu . .
3) Aufgrund des hohen Abstraktionsgrades der Beziehung zwischen Entitäten (letztendlich abstrahiert in horizontale und rekursive Eltern-Kind-Beziehungen) ist die Schnittstelle der Datenbankzugriffsschicht sehr vielseitig und kann an jede Beziehung zwischen Entitäten angepasst werden. Diese Art von Design lässt sich nicht in gewöhnlichen Worten ausdrücken. Vielleicht verstehen Sie es, nachdem Sie den Code gelesen haben.
4) Viele gute Designs in CS übernommen, wie z. B. Provider-Modus, dynamische SQL-Konstruktion zur Implementierung benutzerdefinierter Abfragen, Caching, mehrsprachiges Ressourcendateidesign, benutzerdefiniertes URL-Umschreiben, Ajax-Funktionen usw.;
5) Hervorragende Betriebsleistung;
6) Verwenden Sie ein einfaches Hintergrundverwaltungssystem des Artikelveröffentlichungssystems als Demo, um einige Funktionen dieses Frameworks zu demonstrieren.
7) Derzeit wird das Framework noch kontinuierlich verbessert und optimiert. .
Vorsichtsmaßnahmen für die Verwendung:
Hängen Sie zunächst die SQL-Datenbankdatei unter DB an
1) Die Datenbankverbindungsinformationen müssen in der Datei web.config korrekt festgelegt werden
Diese Datenbank-Link-Zeichenfolge.
2) Die Seitenadresse wurde neu geschrieben und die echte Seite wird platziert, wie im folgenden Beispiel:
Im Verzeichnis ControlPanelArticle werden Konfigurationsinformationen zum Umschreiben von URL-Adressen in der Datei Urls.xml abgelegt.
3) Wenn Sie das Artikelverwaltungsmodul debuggen möchten, ist der Code vorhanden
AppCodeControlsControlPanelArticle
Legen Sie einen Haltepunkt in der CS-Datei im Verzeichnis fest und debuggen Sie dann, indem Sie eine Verbindung zum Prozess herstellen.
Da diese Demo nicht als Website, sondern in Form einer Bibliothek konzipiert ist, kann sie nur durch Anhängen an den Prozess debuggt werden.
Darüber hinaus habe ich auch einen Link zum schnellen Hinzufügen von Artikeltestdaten erstellt. Die Adresse lautet:
http://localhost/createarticles.aspx?count=100
Unter diesen bedeutet count=100, dass 100 Artikel erstellt werden. Sie können ihn auf einen beliebigen Wert größer als Null ändern, um die benötigten Testdaten zu erstellen.
Nach meinem Test mit 20.000 Daten habe ich festgestellt, dass die Leistung gut ist. Weitere Daten wurden nicht getestet.
Ich glaube, dass die Leistung dieses Frameworks ziemlich gut sein sollte. Als ich es entworfen habe, wurden viele Teile speziell auf Leistung ausgelegt.
Expandieren