Laden...

Include bei asp

Erstellt von alf468 vor 18 Jahren Letzter Beitrag vor 18 Jahren 1.180 Views
A
alf468 Themenstarter:in
196 Beiträge seit 2005
vor 18 Jahren
Include bei asp

Ich möchte gerne wenn man auf einem Link klickt sich ein Teil der Seite verändert.
Der Link wird als Parameter an die URL gehangen.Bei der Abfrage welcher Link aktiv ist

private void Page_Load(object sender, System.EventArgs e)
		{
			if(Request["link"].ToString()!=null)
			{
				Response.Write(Request["link"].ToString());
			}
		}

soll an einer Stelle in der Seite der Text verändert werden.Bei php würde ich das per include oder mit einer if Abfrage im Quellcode machen.Aber wie geht das bei aspx?
Dies sind meine ersten schritte im asp(x) Bereich.

R
151 Beiträge seit 2005
vor 18 Jahren

Bin zwar auch Neueinsteiger in dem Gebiet aber ich glaube dir könnte Server.Execute("inhalt.aspx"); weiterhelfen.

Diese Zeile führt, wie zu erwarten, eine andere aspx-Seite auf dem Server aus, die dann entsprechend den neuen Inhalt repräsentieren könnte, ohne, dass gleich eine gänzlich neue Seite eröffnet wird. Der Inhalt wird also einfach eingefügt.

A
alf468 Themenstarter:in
196 Beiträge seit 2005
vor 18 Jahren

Danke Rapthor,
stellt sich jetzt nur noch die Frage wie ich das ganze an der gewünschten Poition mache? Oder kann ich eine Methode aus der C# Klasse von der Webseite aus aufrufen?

D
462 Beiträge seit 2005
vor 18 Jahren

Ein Web User Control könnte dir weiterhelfen! Diese kannst du dann, je nach angeforderter Seite, mittels this.Controls.Add(LoadControl("ctl-name")) (oder so ähnlich) einfügen.

R
151 Beiträge seit 2005
vor 18 Jahren

Folgendes Beispiel habe ich mal gefunden:

<html>
<head><title>Seite A</title></head>
<body>

Das ist Seite A, erster Output<br>

<% 
Server.Execute("SeiteB.asp")
%>

Das ist Seite A, zweiter Output. Das hier sieht man jedoch erst nach SeiteB.asp<br>

</body>
</html>

Ansonsten geht das ganze Spiel auch folgendermaßen. Das hier steht im Inhalt der ersten Seite:

<% @Page language="C#" %>

<script runat="server">
	void Page_Load(object sender, EventArgs e)
	{
                       Server.Execute("SeiteB.aspx");
	}
</script>

<html>
<body>
bla blu bla
Inhalt der ersten Seite ......
</body>
</html>

Das Ergebnis ist, dass du zuerst den Inhalt der HTML siehst und danach eben die Seite des Execute ... versuch's mal.

Rapthor