Hi,
ich habe eine Seite, die je nach einer bestimmten Bedingung unterschiedliches Html ausgeben soll. Mir fällt da momentan nur diese Lösung ein, die ich aber doof finde, da es jetzt Logik im Htmlteil gibt. Kann man das ganze irgendwie anders lösen?
<%@ Page Language="C#" MasterPageFile="~/Html/VxBet.Master" AutoEventWireup="true" CodeBehind="Tipp.aspx.cs" Inherits="VxBet.Html.Tipp" Title="Untitled Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<%
if ( bedingung )
{
%>
Erste Ausgabe mit Html
<%
}
else
{
if ( bedingung 2 )
{
%>
Zweite Ausgabe mit Html
<%
}
else
{
%>
Dritte Ausgabe mit Html
<%
}
}
%>
gruß Sieben
Nur die Kogge schwimmt! 😁
Hallo,
natürlich kann (/sollte) man das anders lösen...
Hau einfach drei <div id="ErsteAusgabe" runat="server" ...> usw... rein. Danach kannst du diese konfortabel in der CodeBehind ansprechen und ensprechend die Visible Eigenschaft setzten.
gruess
Hm... ist dann "ErsteAusgabe" eine Methode in der Klasse? Dann muss ich in dieser Methode Htmlcode mit "Response.Write" schreiben, oder?
Nur die Kogge schwimmt! 😁
Hallo,
Hm... ist dann "ErsteAusgabe" eine Methode in der Klasse?
Das sind Grundlagen von ASP.NET. ErsteAusgabe ist keine Methode sondern ein Feld vom Type HtmlGenericControl
<div id="ErsteAusgabe" runat="server" Visible="false">
Erste Ausgabe mit Html
</div>
<div id="ZweiteAusgabe" runat="server" Visible="false">
Zweite Ausgabe mit Html
</div>
usw....
{
if (...)
ErsteAusgabe.Visible = true;
else
ZweiteAusgabe.Visible = true;
}
ASP.NET und Classic ASP lässt sich nur schlecht vergleichen, daher musst du hier komplett umschalten...
Grz
Hallo Sieben
Response.Write solltest du nicht mehr verwenden, siehe:
Genau so Code im deklerativen Code, weg damit.
Du kannst alles ins Codebehind auslagern.
Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011
Boah jetzt habi des verstanden, des is ja geil 😄
Ich schreib im Aspteil 'div' Elemente mit 'Runat=Server' und er generiert mir im Hintergrund ein 'HtmlGenericControl' was ich dann in der abgeleiteten Page Klasse als Member ansprechen kann und dort die Eigenschaften verändern kann.
So funktionieren dann wohl alle Asp-Controls. Dat find ich super, ich dacht schon ich müsst den Response-Kram schreiben 😉
Joa mir fehlen da wohl wirklich ein paar Basics, hab bisher leider keine gute Einführung in ASP.net gefunden 😦
Trotzdem noch mal vielen Dank für die Aufschlussreichen Antworten 😃
gruß Sieben
Nur die Kogge schwimmt! 😁
Hi!
Die Quickstart-Tutorials sollten fürs erste ausreichend sein.
http://quickstarts.asp.net/QuickStartv20/aspnet/Default.aspx
Hallo Sieben
Response.Write solltest du nicht mehr verwenden, siehe:
Ausser im ASP.NET MVC da werden diese im Tutorial empfohlen, ansonsten der HTML Encoder
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
Hallo schaedld
Ausser im ASP.NET MVC da werden diese im Tutorial empfohlen, ansonsten der HTML Encoder
ASP.NET MVC ist ja auch was anderes 😃
Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011
Hallo Peter
ASP.NET MVC ist ja auch was anderes 😃 Jup, finde ich sehr interessant, wohl tuen sich dort sicherlich andere Probleme auf die man mit dem "normalen" ASP.NET nicht hätte /hat 😉
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
Hallo schaedld
Jup, finde ich sehr interessant, wohl tuen sich dort sicherlich andere Probleme auf die man mit dem "normalen" ASP.NET nicht hätte /hat 😉
Genau so ist es 😉
Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011