Frage

Dies mag wie eine lächerliche Frage scheinen, da ich in .NET ziemlich unerfahren bin.

Ist es möglich, Komponenten in C # zu bauen, .NET, die in ASP.NET wiederverwendet werden können. Zum Beispiel, wenn man in dem Hafen eine Anwendung auf die Bahn möge.

Wenn möglich, wie tragbar sind sie? D. h kann GUI in gewissem Maße wiederverwendet werden? Gibt es ein Zwischenformat als Basis zu verwenden, oder ist es erforderlich, C # Komponenten als Binärdateien zu benutzen?

Danke.

Edit:

Vielen Dank für Ihre Eingabe! Ich bin ganz mit den Design-Aspekten dieses Problem vertraut, das heißt, wie die Komponenten für die Wiederverwendung zu modellieren. Jedoch Sie machte mir klar, dass die Frage ist wirklich über - Inwieweit ist .NET wiederverwendbar zwischen ASP und Windows? Kann man, dass bestimmte Pakete von .NET-Komponenten sagen sind unabhängig von Umwelt und einige sind plattformspezifisch?

War es hilfreich?

Lösung

Absolut - eine .NET-Klasse kann in jeder Art von .NET-Anwendung verwendet werden. Doch es ist eine Art hängt davon ab, welcher Teil der Anwendung über Sie reden.

Im Allgemeinen Windows Forms-Benutzerschnittstellen nicht wiederverwendbar sind als ASP.NET User Interfaces, da die Designeinschränkungen so unterschiedlich sind (dh Web-Browser nur eine kleine Anzahl von Kontrollen unterstützen, oft fließen verwenden (nicht Raster) Layout usw. ähnlich sind die Ereignisse unterschiedlich (eine Web-Formular-Taste ist nicht das gleiche wie eine Windows-Formular-Taste, etc.).

Was Sie leicht wiederverwenden können, obwohl, wenn Sie die Dinge richtig zu tun, ist die Geschäftslogik. Gestalten Sie Ihre Klassen, damit sie sich intern nichts wissen, ob es ein Windows-Formular oder ein Web-Formular (oder eine Konsolenanwendung oder Web-Service, etc.). Das heißt, sollten die Klassen reine Implementierungen Ihrer Business-Logik sein. Dann können Sie diese Klassen in jedem Kontext verwenden Sie wollen.

Andere Tipps

Die kurze Antwort auf Ihre Frage ist ja -. Einfach den Code trennen Sie zwischen den beiden Ansichten in eine Schnittstelle unabhängigen Klasse gemeinsam nutzen mögen, vorzugsweise in einer separaten Assembly, und beinhaltet, dass der Aufbau

Die lange Antwort ist komplizierter - die Fähigkeit, dies zu tun, wird zwischen der Anwendung und der Anwendung variieren. Sie werden in der Lage sein, weniger Code trennen für UI-intensive Anwendungen, die hinter den Kulissen viel tun, nicht (wie, sagen wir, Spiel eine Art von Grafik), als Sie für eine sehr einfache Benutzeroberfläche Anwendung, die eine Menge hinter tut die Szenen (sagen wir, eine Benutzeroberfläche, die von einer einzigen Taste besteht, die dann weg tritt eine komplexe Datenmanipulation Prozess).

Am Ende - bietet .NET die Möglichkeit für Sie, dies zu tun. Ihre tatsächliche Fähigkeit, dies zu tun, wird sehr abhängig von Ihren eigenen Design-Fähigkeiten und Ihren speziellen Anforderungen. Es gibt eine Menge zu diesem Thema zur Verfügung zu schreiben. - Ich Start empfehlen durch einen Blick auf Design Patterns nehmen (obwohl das ursprüngliche Buch Beispiele in C ++ schreibt, glaube ich, dass jemand ein Buch mit Beispielen in C # getan hat kann ich aber nicht sprechen die Qualität der IT.)

Ich habe es noch nie zuvor getan, aber ich denke, Sie den gemeinsamen Code an einem separaten Klasse platzieren können. UI müssen als Windows Forms und asp.net dupliziert werden müssen vollständig Unterschied Programmieransätze.

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