www.IT-Visions.de-Diskussionsforen (Version 2.1)
(Diese Seite wurde noch nicht auf das neue Layout umgestellt!)


Diese Foren stehen den Lesern unserer Bücher und allen anderen registrieren Benutzern dieser Website zur Verfügung. Wir würden uns freuen, wenn viele Nutzer dieser Website hier nicht nur Fragen stellen, sondern auch die Fragen anderer Nutzer beantworten. Diese Foren sind ein ehrenamtlicher, nicht-kommerzieller, unmoderierter Community-Dienst von www.IT-Visions.de. Wenn Sie kommerzielle Unterstützung für .NET/Scripting/PowerShell suchen, schauen Sie bitte auf unser Support-Angebot und unsere Schulungsangebote für Scripting und Schulungsangebote für .NET.



Re: Migration .NET 1.1 -> .NET 2.0
Autor:  Marcus
E-mail:  Antworten bitte nur in das Forum!
Datum:  25.07.2007 10:27:17
Subject:  Re: Migration .NET 1.1 -> .NET 2.0
Bezug zum Buch: 
Message:  Meine Nachricht:
----------------

Hallo Herr Dr. Schwichtenberg,

vielen Dank für die schnelle Antwort.

Zu 1.:
Ok, dann bin ich ja schon mal zufrieden, dass ich mit der Aufteilung nicht ganz falsch lag.
Besteht die Möglichkeit, z.B. zwei Webanwendungsprojekte zu haben und diese dann zu einer Webanwendung zusammenzuführen?

Zu 2.:
Stimmt, da habe ich mich falsch ausgedrückt. Die Referenzen kann man hinzufügen, dass Problem was bei mir aber dann besteht, ist das innerhalb des MainProjekts keine Klasse oder ähnliches auf Objekte aus den referenzierten dlls verweist, da ja nur die reinen ASPX-Dateien innerhalb des Projekts vorhanden sind.

Und scheinbar werden beim Kompilieren, im Gegensatz zu .NET 1.1, nur die dlls in die MainProjekt.dll "eingebunden" die auch tatsächlich innerhalb des Projekts "benutzt" werden. Also KEINE... Eine quick and dirty Lösung von mir war eine Art Dummy-Klasse zu erstellen, die einfach nur Variablen Deklarationen von Objekten aus den verschiedenen dlls enthält, so dass auf alle dlls verwiesen wird. Das funktioniert dann auch, alle ddls werden in der MainProjekt.dll eingebunden. Jedoch eine schöne Lösung ist das nicht... Vielleicht haben Sie ja noch nen Tipp!?

Zu 3.:
Vielen dank, das werde ich mir mal anschauen.
Wo kann man denn einstellen, dass man die Anwendung nach dem Websitemodell oder dem Webanwendungsmodell migriert?? Habe ich wahrscheinlich übersehen.

Viele Grüße
Marcus

Ich beziehe mich auf folgenden Beitrag:
---------------------------------------

Meine Nachricht:
----------------

Hallo,

Zu Ihrem Text folgende Hinweise:
1. Grundsätzlich machen Sie es richtig, die Logik in DLLs auslagern.
2. Referenzen sind selbstverständlich auch in .NET 2.0/VS 2005 möglich. "Add Reference" im Projektmappenexplorer oder in den Projekteigenschaften.
3. Es gibt in VS 2005 zwei Projektmodelle für Webanwendungen, siehe http://www.it-visions.de/dotnet/aspnet2/projektmodellvergleich.aspx. Die Migration von VS 2003 zum VS 2005-Webanwendungsmodell ist wesentlich einfacher als zum Websitemodell. Microsoft empfiehlt für die Migration ausdrücklich das Webanwendungsmodell und diese Empfehlung kann ich unterstreichen. Neue Projekte würde ich mit dem Websitemodell anlegen.

Beste Grüße

Holger Schwichtenberg
www.IT-Visions.de


Ich beziehe mich auf folgenden Beitrag:
---------------------------------------

Hallo!

Ich arbeite in einer relativ großen Webanwendung unter .NET 1.1. Einige hundert Webseiten (+ Codebehind-Dateien) und etwa zehn Mal so viele Klassen.

Die Webanwendung ist mit der Zeit immer größer geworden, so dass ich nach einer gewissen Zeit die Anwendung in mehrere Projekte aufgeteilt habe. Hauptsächlich aus Performance Gründen während der Programmierung. Öffnen des (einen) Projekts in VS2003, die Intellisense und die Kompilierung waren unterirdisch langsam. Ein weiterer Grund war aber auch die Übersichtlichkeit.

Die verschiedenen Projekte bilden Einheiten in denen gewisse zusammengehörige Klassen und Codebehind-Dateien zusammengefasst wurden.
Ich versuche mal die Struktur der verschiedenen Projekte darzustellen:

- Projekt1
--- Classes
--- Codebehind-Dateien

- Projekt2
--- Classes
--- Codebehind-Dateien

- Projekt3
--- Verweise
------ Projekt1.dll
--- Classes
--- Codebehind-Dateien

- MainProjekt (Webanwendung)
--- Verweise
------ Projekt1.dll
------ Projekt2.dll
------ Projekt3.dll
--- ASPX-Dateien
------ Projekt1 ASPX-Dateien
------ Projekt2 ASPX-Dateien
------ Projekt3 ASPX-Dateien
--- BIN-Ordner (Beim Kompilieren des jew. Projekts wird die dll hierher kopiert)
------ Projekt1.dll
------ Projekt2.dll
------ Projekt3.dll
------ MainProjekt.dll

Die eigentliche Webanwendung enthält somit nur noch die reinen ASPX-Dateien und die gesamte Logik (Klassen und Codebehind) wird über die Verweise auf die jeweiligen Projekt dlls eingebunden.

Eine weitere Besonderheit der Anwendung ist, das beim Start die MainProjekt.dll „eingelesen“ wird (Assembly.Load) und alle weiteren referenzierten dll’s (siehe Verweise) ebenfalls (Assembly.GetReferencedAssemblies). Dies ist notwendig, um z.B. bestimmte statische Methoden einer Klasse, die innerhalb der verschiedenen Projekte definiert sind, während dem Start der Anwendung auszuführen.

In .NET 2.0 wurde die Struktur einer Webanwendung grundlegend geändert.
Da ich jetzt vor der Umstellung auf .NET 2.0 stehe, frage ich mich, ob es standardisierte Szenarien gibt, um große (bzw. riesige) Webanwendungen zu strukturieren!?!? Ich glaube nämlich nicht, das VS2005 besser mit EINEM riesigen Webanwendungs-Projekt umgehen kann als VS2003. Außerdem habe ich festgestellt, dass man scheinbar in .NET 2.0 einer Webanwendung keine Verweise mehr hinzufügen kann. Da wäre es dann glaube ich nicht ohne weiteres möglich, die referenzierten dll’s der Anwendung einzulesen!?

Lange Rede kurzer Sinn: Hat irgendjemand in diesem Bereich schon Erfahrungen gesammelt??

Für Tipps (gerne auch Literaturquellen) und Hilfestellungen wäre ich sehr dankbar.

MfG
Marcus

Antworten

  Zurück zum Forum



 .NET Framework-Programmierung -- C#, VB.NET, ASP.NET, u.a.
 Migration .NET 1.1 -> .NET 2.0 von Marcus  am 24.7.2007 10:19:50 PM
 Re: Migration .NET 1.1 -> .NET 2.0 von Dr. Holger Schwichtenberg  am 25.7.2007 12:37:58 AM
 Re: Migration .NET 1.1 -> .NET 2.0 von Marcus  am 25.7.2007 10:27:17 AM


www.IT-Visions.de - Dr. Holger Schwichtenberg / 1998-2023