Frage

Ich bin ein Rahmen für verschiedene in-house CRUD apps zu entwickeln. Ich habe mehrere MS-Technologien (WPF, Access, WinForms, ASP.NET) in Betracht gezogen und haben sich auf ASP.NET MVC mit HTA + Jquery für den Kunden abgewickelt. Mein Grund dafür ist, dass ich brauche eine Möglichkeit, schnell zu schreiben und bereitstellen einmalige GUI-Anwendungen sowie die Aufrechterhaltung robuste Anwendungen, die eine lange Lebensdauer zu erwarten ist.

Zunächst möchte ich einige Gedanken über die relativen Vorteile zu schätzen wissen der Verwendung von ADODB auf der Client-Seite im Vergleich zu ADO.NET auf der Serverseite. Ich bin Neigung in Richtung ADODB da werde ich Client-Seite Zugriff auf die SQL Server haben (ich habe bereits eine js Bibliothek geschrieben, die mit ADODB Griffe die Interaktion). Allerdings kann ich sehen, wie eine RESTful Service Entwicklung schließlich nützlich sein kann.

Zum anderen muss ich Reporting-Funktionen in das System integrieren. Ich kann SQL Server verwenden, um Dienste oder Crystal Reports berichten, aber die Benutzer haben auf einige ältere Anwendungen gewöhnt, die VBA verwenden, um Berichte in Word zu schreiben; so dass ich in Anbetracht WordML mit den Berichten zu schreiben.

Danke.

War es hilfreich?

Lösung

Datenbankzugriff

Wenn Sie einen Thin Client benötigen, dann ist es wahrscheinlich besser, zu bleiben weg von direkt auf die Datenbank im Client zugreifen.

Das Hauptproblem ist, dass Sie eine hohe Abhängigkeit von einer bestimmten Netzwerk-Architektur einführen werden und sowohl Ihre ASP.Net-Anwendung und die HTA wird auf der Datenbank in hohem Maße abhängig sein.

Stattdessen würde ich es vorziehen, die Abhängigkeit von direkter Sichtlinie zu dem DB und habe die Daten zu trennen, die vom Server verarbeitet werden.

Dies hat einige Vorteile:

  • für viele kleine Änderungen an der db, sind Sie wahrscheinlich nur gehen, die ASP-App aktualisieren zu müssen.

  • Wenn Sie jemals Ihre Client-Anwendung müssen über das Internet funktionsfähig sein (zB weil einige Nutzer an eine externe Sitzung gehen, müssen von der Arbeit oder in Ihrem Unternehmen eine neue Niederlassung eröffnen arbeiten), dann werden Sie nicht haben Thin Client neu zu schreiben.

  • Sie halten eine bessere Kontrolle über den Zugriff auf die Ressourcen: nur die ASP-App Rede auf die Datenbank und Filter lassen, was kommt in / aus ihm
    . Dies wird erspart Sie alle Sicherheit auf dem Client implementieren zu müssen: der ASP-App wird die Hüterin der Datenbank. Es ist eine viel bessere Möglichkeit, Informationen zu sichern und es gibt Ihnen viel mehr Kontrolle.

Berichte

Für die Berichterstattung ich den Server verwenden würde wieder anstatt zu implementieren komplexe Reporting-Funktionen im Client selbst.
Das Problem ist, dass Sie immer begrenzt auf dem Client in Gang zu bringen, wenn Sie eine HTA verwenden und wollen nicht auf den Computern der Benutzer installieren Abhängigkeiten starten.
Sie werden Ende-up Aufbau einer dick Kunde im Nu ...

Wenn Sie mit ASP.Net es gibt viele wirklich gute Reporting-Tools, die Ihr Leben viel einfacher und lassen Sie Ihre Benutzer schöne Berichte in Excel, Word, PDF bekommen, usw., ohne dass Sie diese Funktionen selbst codieren, die .
Crystal Reports ist in Ordnung, aber es gibt bessere und einfachere Alternativen, zum Beispiel die Developer Express Bericht rel="nofollow Motor ist recht einfach zu bedienen.

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