Ich bin gerade dabei, unsere Site auf einen neuen Webserver (Server 2008 R2) umzustellen, und versuche, eine der neuen Anwendungen auf den alten Server (Server 2003) zu kopieren, damit Benutzer in der Zwischenzeit darauf zugreifen können . Das Problem, auf das ich stoße, ist, dass ich den Ordner zwar direkt auf den alten Server kopiert, die App auf dem alten Server gestartet und die ASP.NET-Version auf 4.0 festgelegt habe, damit sie mit der auf dem neuen Server verwendeten übereinstimmt Der alte Server zeigt die Seite anders an. Insbesondere das CSS-Format (im Kopf), mit dem die Schriftgröße und -art festgelegt wird, wird auf dem alten Server nicht verwendet. Auf einer anderen Seite wird ein Textbereich nicht in den auf der ASP.NET-Seite angegebenen Dimensionen angezeigt. Die Stilinformation schafft es einfach nicht in den Quellcode der resultierenden Seite.
Hier ist zum Beispiel die Codezeile in der aspx-Datei:
<td colspan="3"><asp:TextBox ID="cre_slm_comm1" runat="server" Height="156px"
TextMode="MultiLine" Width="400px" Text='<%# Eval("cre_slm_comm1") %>' /></td>
Dies ist der resultierende Quellcode auf dem IIS6-Server:
<td colspan="3"><textarea name="FormView1$cre_slm_comm1" rows="2" cols="20"
id="FormView1_cre_slm_comm1">Test comment. 3/1/13. br.</textarea></td>
Und die gleiche Zeile auf dem IIS7.5-Server:
<td colspan="3"><textarea name="FormView1$cre_slm_comm1" rows="2" cols="20"
id="FormView1_cre_slm_comm1" style="height:156px;width:400px;">
Test comment. 3/1/13. br.</textarea></td>
Irgendwelche Vorschläge, was ich tun kann, um die Art und Weise zu beheben, in der diese Server den Code nicht auf die gleiche Weise interpretieren?
Antworten:
Ändern Sie den Standortanwendungspool in IIS, um dieselbe .NET Framework-Version und -Pipeline des anderen Servers als Ziel festzulegen.
oder füge diese Zeile in web.config hinzu:
ASP.NET 4 Breaking Changes
Asp.net passt das gerenderte HTML an die Art und Version des Browsers an. Überprüfen Sie, ob es sich nur um einen Browser handelt.
Wenn das Problem weiterhin besteht, liegt möglicherweise ein .net-Fehler vor, oder der Server 2 unterscheidet sich in der Framework-Version (einige Patches usw. usw.).
Auf jeden Fall ist es eine einfache Umgehung und eine bewährte Methode, ein Element mit einer CSS-Klasse zu gestalten.
quelle