September 2008 Blog Posts

HTML-Code verkleinern

Im DSL-Zeitalter scheint es nicht mehr so wichtig zu sein ob die Seite nun 50KB oder 100KB HTML-code hat. Aber auch mit DSL ist ein Unterschied von 30KB deutlich zu spüren. Mit ASP.NET verwendet man in der Regel viele Controls. Das führt meißt dazu, dass viele leere Zeilen und unötige leerzeichen den Code vergrößern. Mit folgendem Code können diese entfernt werden: Protected Overrides Sub Render(ByVal output As HtmlTextWriter)          Dim sb As StringBuilder = New StringBuilder          Dim sw As StringWriter = New StringWriter(sb)          Dim htw As HtmlTextWriter = New HtmlTextWriter(sw)          MyBase.Render(htw)          Dim PageHTML As String = sb.ToString()          PageHTML = PageHTML.Replace(vbTab, " ")          While PageHTML.Contains(" ")                  ...

posted @ Tuesday, September 30, 2008 10:39 AM | Feedback (0)

Web.Config mit XLinq editieren

Imports <xmlns:co="http://schemas.microsoft.com/.NetConfiguration/v2.0"> Class editWebConfig        Public shared Sub updateWebConfig()               Dim PathToWebConfig As String = "d:\www\inetPub\web.config"               Dim webConfig As XDocument = XDocument.Load(PathToWebConfig)                              Dim xNode = From p1 In webConfig.<co:configuration>.<co:connectionStrings>.<co:add> _                                    Where p1.@name = "connectionString_Name_In_Web_Config" _                                    Select p1                              xNode.@connectionString = "Data Source=.\SQLExpress;Initial Catalog=myDatabase;Integrated Security=True"               webConfig.Save(PathToWebConfig)        End Sub End Class  

posted @ Tuesday, September 23, 2008 1:11 PM | Feedback (0)

SQLScript aus Textdatei ausführen

So ein trivialer Vorgang... und trotzdem noch nie gemacht. Wie startet man ein Script in ASP.NET, das man zuvor im management Studio generiert hat. Imports Microsoft.SqlServer.Management.Smo Imports Microsoft.SqlServer.Management.Sdk.Sfc Imports Microsoft.SqlServer.Management.Common [....]  Dim SQL = File.ReadAllText("D:\_stromtip2005\SQLDATA\CreateDependencies.sql") Dim sqlConnectionString As String = "Data Source=.\SQLExpress;Initial Catalog=CMS_2008_ST_DATA_32;Integrated Security=True" Dim conn As New SqlConnection(sqlConnectionString) Dim server As New Server(New ServerConnection(conn)) server.ConnectionContext.ExecuteNonQuery(SQL)

posted @ Sunday, September 21, 2008 3:54 PM | Feedback (0)

Umzug eines DNS-Servers

Alle Jahre wieder... Mein Server zieht um und bekommt eine neue IP. Den Nameserver umzuziehen ist kein wirkliches Problem. Wenn man aber etwas falsch macht, können die Folgen fatal sein. Den DNS-Dienst auf dem neuen Server stoppen. Das Verzeichnis %SystemRoot%\System32\DNS\ vollständig auf den neuen Server übertragen. den RegistryKey HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server\Zones auf den neuen Server übertragen Den DNS-Dienst auf dem neuen Server starten. Nicht vergessen: Firewall auf Port 53 TCP und UDP zu öffnen.  

posted @ Friday, September 12, 2008 10:16 AM | Feedback (0)

Html mit Linq und .NET 3.5 im Codebehind generieren

Jeder kennt es, ab und zu muß man dann doch HTML-Code im ´Hintergrund (z.B. für einen Email-Body) generieren und sückelt sich zu unübersichtlich zu Tode. Mit dem XElement ist das kein Problem. Man schreibt den HTML-Code wie im Markup-Editor und kann sogar Variablen wie im markup einbinden: <%=meineVariable%> Kein hantieren mit Anführungszeichen usw..

posted @ Tuesday, September 9, 2008 7:41 PM | Feedback (0)

Alle Events aus der global.asax.

In Der Global.asax gibt es mehr Events als nur die 4, die standardmäßig in der global.asax aufgeführt sind. Hier ist eine Liste aller mir bekannten Events: Application_Start: Tritt ein, wenn die Application gestartet wird Application_Init: Tritt ein nach _Start Application_Disposed: Tritt ein bevor die Instanz zerstört wird Application_Error: Tritt ein wenn unbehandelte Fehler auftreten. z.B. für Cusom-Errorpage Redirect. Application_End: Tritt ein, wenn die Application beendet wird Application_BeginRequest: Tritt ein, bei jedem Request den ein User macht. Das Session-Objekt ist hier noch nicht verfügbar. Application_EndRequest: Dannach ist der Request vollständig beendet. Application_PreRequestHandlerExecute: Unmittelbar dannach wird die Page oder der Webservice durch den ASP.Net handler  initialisiert. Das Sessionobjekt ist hier bereits verfügbar Application_PostRequestHandlerExecute: Nach dem ausführen des...

posted @ Tuesday, September 9, 2008 6:58 PM | Feedback (0)