Tipps und Tricks rund um .NET und Visual Studio

In ASP.NET 4.0 rendern wie in ASP.NET 3.5
Kommentare

In diesem Teil von .NETversum geht es um ASP.NET und wie man mit ASP.NET 4.0 rendern kann wie in ASP.NET 3.5.

Das Rendering (also die Umwandlung der Serversteuerelemente in das Ausgabeformat, HTML, CSS und JavaScript) wurde in ASP.NET erheblich verbessert. Insbesondere hat Microsoft sich nun an einige übliche Gepflogenheiten im Webdesign angepasst. Guter Webseitencode trennt heute streng zwischen der Struktur in HTML beziehungsweiseXHTML und dem Layout in CSS. Außerdem werden beispielsweise zu Layoutzwecken keine Tabellen mehr verwendet. Tabellen sollten nur noch für die Darstellung von Daten verwendet werden. Ebenso werden Auflistungen stets mit den Tags

    ,
      und
    • erstellt. Wo immer der Entwickler durch das Setzen von Eigenschaften die Wahl zwischen verschiedenen Rendering-Ausgaben hat, sollte er jene wählen, die sich an die aktuellen Standards halten beziehungsweise ihnen möglichst nahe kommen. Einige Steuerelemente haben in ASP.NET ihr Rendering verbessert, zum Beispiel:

      • Verzicht auf im Menu Control, stattdessen jetzt
      • CheckBoxList und RadioButtonList unterstützen nun auch Rendering als
          und
          1. Validation Controls verwenden keine Inline Styles mehr
          2. disabled=“disabled“ nur noch für Eingabeelemente
          3. um Hidden Fields (z. B. __ViewState) mit Class „aspNetHidden“

            Warum sollte man dieses neue Rendering ausschalten wollen? Es geht nicht darum, dass das neue Rendering schlecht wäre. Es geht um Abwärtskompatibilität, denn das neue Rendering kann zu Inkompatibilitäten mit eigenen CSS-Vorlagen und selbstgeschriebenem JavaScript führen. Auch kann es zu unerwünschten Änderungen kommen, zum Beispiel weil die Ausgaben der Validation Controls nicht mehr automatisch rot sind. Bei einer Umstellung auf ASP.NET 4.0 möchte man möglicherweise im ersten Schritt die Website mit den bestehenden CSS-Vorlagen und dem bestehenden JavaScript weiterbetreiben können. Möglich ist das durch das Attribut controlRenderingCompatibilityVersion=“3.5″ im Tag in der web.config-Datei (Listing 1). Wenn man controlRenderingCompatibilityVersion=“3.5″ nicht setzt, wird das neue ASP.NET 4.0 Rendering angewendet. Alternativ kann man auch controlRenderingCompatibilityVersion=“4.0″ setzen.

            Listing 1

            
            
            ...
              
                
            ...
                
              
              

            Dr. Holger Schwichtenberg (MVP) und FH-Prof. Manfred Steyer arbeiten bei http://www.IT-Visions.de als Softwarearchitekten, Berater und Trainer für .NET-Technologien. Dabei unterstützen sie zahlreiche Unternehmen beim Einsatz von .NET und entwickeln selbst in größeren Projekten. Sie haben zahlreiche Fachbücher geschrieben und gehören seit vielen Jahren zu den Hauptsprechern auf der BASTA. Manfred Steyer ist zudem verantwortlich für den Fachbereich „Software Engineering“ der Studienrichtung „IT und Wirtschaftsinformatik“ an der FH CAMPUS 02 in Graz. Dr. Holger Schwichtenberg unterrichtet in Lehraufträgen an den Fachhochschulen Münster und Graz.

          Unsere Redaktion empfiehlt:

          Relevante Beiträge

          Meinungen zu diesem Beitrag

          X
          - Gib Deinen Standort ein -
          - or -