Laden...

.NET Applikationsserver

Erstellt von Rainbird vor 16 Jahren Letzter Beitrag vor 15 Jahren 24.673 Views
Thema geschlossen
Rainbird Themenstarter:in
3.728 Beiträge seit 2005
vor 16 Jahren
.NET Applikationsserver

Hallo Community,

angeregt durch Objektorientierte Datenzugriffsschicht, habe ich einen leichtgewichtigen aber durchaus praxistauglichen Applikationsserver geschrieben. Mit praxistauglich meine ich, dass der Host-Prozess allgemein gehalten ist und ohne Änderung für verschiedene Anwendungen als Applikationsserver eingesetzt werden kann. Der Host wurde primär dafür entworfen, datenbankgestützte Geschäftsanwendungen zu betreiben, ist aber nicht auf diese Art von Anwendungen beschränkt.

Postet Eure Fragen, Anregungen und konstruktive Kritik zu diesem Projekt bitte hier:
Fragen, Diskussion, Kritik zu Projekt ".NET Applikationsserver"

Der Kern und die grundlegenden Infrastrukturdienste sind bereits fertig. Momentan ist der Host-Prozess des Applikationsservers eine einfache Konsolenanwendung.

Features des Applikationsservers:*Sitzungsverwaltung *Rollenbasierte Sicherheit über Windows-Gruppen (ermöglicht Single-Sign-On) *Entfernter Zugriff auf Dienste über einen binären TCP-Remoting-Kanal *Schneller lokaler Zugriff auf Dienste über einen binären IPC-Remoting-Kanal *Sperrungsverwaltung *Intuitive API *Kapselung der Konfiguration und der Kommunikationstechnologie *Ablaufverfolgung (Tracing) *Unterstützung von Mehrsprachigkeit und Kultureinstellungen *Automatische verteilte Transaktionen (via System.Transactions)

System-Anforderungen:*.NET Framework 2.0 *Windows 2000 Professional oder höher *SQL Server 2005 Express oder höher (Wird für das Beispiel benötigt, aber nicht für den Applikationsserver selbst)

Beispielprojekt

Der "nackte" Applikationsserver ist zu Studien- und Demonstrationszwecken nicht gut geeignet. Deshalb gibts eine kleine 3-Tier-Beispiel-Anwendung dazu, die folgende Dienste implementiert:*Artikelstammverwaltung *Lagerverwaltung

Eine schlicht gehaltene Windows.Forms-Anwendung macht den Client.

Achtung! Nach auspacken der ZIP-Datei bitte ZUERST die Setup.exe aufrufen! Das kleine Setup-Programm erstellt die Beispieldatenbank. Ohne Datenbank geht nix, deshalb erst die Setup.exe starten und dann die Projektmappe in Visual Studio öffnen.

Sicherheit möchte ich bei meinem Applikationsserver groß schreiben. Deshalb muss man aber auch ein paar Handgriffe machen, bevor man das Projekt laufenlassen kann. Durch die mitgelieferte Setup.exe habe ich versucht, die Konfigurations-Hürden möglichst klein zu halten.

Das rollenbasierte Sicherheitssystem verwendet normale Windows-Sicherheitsgruppen (bzw. Domänen-Sicherheitsgruppen) als Rollen. Ein Benutzer muss mindestens Mitglied der Windows-Gruppe sein, die mit der Rolle 'User' verknüpft ist, um sich mit der Logon-Methode am Applikationsserver anmelden zu können.

Wichtig! Wenn man den aktuellen Benutzer einer Gruppe zufügt (in der Computerverwaltung oder in Active Directory), ist eine Windows-Neuanmeldung des Benutzers erforderlich, damit die neue Gruppenmitgliedschaft übernommen wird.

Viel Spaß mit dem n-Tier Beispiel-Projekt!

P.S. Ich würde mich über reichlich Feedback zu diesem Projekt sehr freuen.

Aktuelle Version 1.2.0.0 herunterladen

Rainbird Themenstarter:in
3.728 Beiträge seit 2005
vor 16 Jahren
Übersicht über die API

So sieht die API des Applikationsservers aus.*ApplicationServer - Statische Klasse mit allen wichtigen Funktionen (Logon etc.) *ServiceFactory<T> - Fabrik zur Generierung von Proxies für den Zugriff auf entfernte Dienste *ISecurityService - Dienstschnittstelle des Sicherheitsdienstes *ILockingService - Dienstschnittstelle des Sperrungsdienstes *DataAccess - Funktionen für den Datenzugriff

Rainbird Themenstarter:in
3.728 Beiträge seit 2005
vor 16 Jahren
Beispielprojekt mit GUI oben

Das Beispielprojekt kann jetzt heruntergeladen werden (Siehe erster Beitrag dieses Threads).

So sieht die Windows-Client-Anwendung des Beispielprojekts aus:

Rainbird Themenstarter:in
3.728 Beiträge seit 2005
vor 15 Jahren
Bugfix für n-Tier Architekturbeispiel

Ich habe einige kleine Bugs behoben. Hier nun die Version 1.2:

Rainbird Themenstarter:in
3.728 Beiträge seit 2005
vor 15 Jahren
Version für Visual Studio 2008

Hallo,

da mir zugetragen wurde, dass die Projektmappe meines Architekturbeispiels unter Visual Studio 2008 Probleme macht, habe ich mir Visual C# 2008 Express runtergeladen und kurz eine funktionierende Projektmappe gebastelt.

Version 1.2, aber für Visual Studio 2008:

Thema geschlossen