Jag har knappt hållt på med .NET sen i april i år, men funktioner i ASP kan lätt återanvändas i .NET, om jag inte missminner mig. Sen beror det ju så klart på vad det är för funktioner, men enklare ASP-funktioner är lätt att implementera i .NET-sidor.
Sen är det meningen med .NET att du ska hålla dig till .NET. Det vill säga du bör göra om din ASP-sida som du vill inkludera till en .aspx-sida, eller varför inte en användarkontroll?
Skapa först huvudsidan, exempelvis default.aspx:
<%@ Page Language="VB" Strict="False" Debug="True" Inherits="defaultclass" Src="default.vb" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Titel</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<a href="default.aspx?cat=1">Inkludera fil 1</a> | <a href="default.aspx?cat=2">Inkludera fil 2</a>
<p>
<form id="def" method="post" runat="server">
<asp:placeholder id="main" runat="server"></asp:placeholder>
</form>
</body>
</html>
I ett webbformulär skapar du nåt som kallas för en PlaceHolder. I denna kommer du sen att kunna visa "inkluderade" sidor. Nästa sida du bör göra är default.vb:
Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Data
Imports Microsoft.VisualBasic
Public Class defaultclass : Inherits Page
protected withevents main As placeholder
Sub Page_Load()
If Not Page.IsPostBack Then
Dim cat As string = fixt(Request.Querystring("CatId"))
Select Case cat
Case "1"
main.Controls.Add(Page.LoadControl("usercontrols/sida-1.ascx"))
head.Text = "Sida 1 att inkludera"
Case "2"
main.Controls.Add(Page.LoadControl("usercontrols/sida-2.ascx"))
head.Text = "Sida 2 att inkludera"
End Select
End If
End Sub
End Class
default.vb som filen heter, är en codebehind-fil. Man bör separera kod från design numera när man bygger hemsidor, och tack vare codebehind i .NET är detta en bra möjlighet att ta tillvara.
I default.vb har vi en klass och en procedur. I proceduren så säger vi åt .NET-motorn att beroende på vilken länk du klickade på på default.aspx, så ska olika innehåll. visas (sida-1.ascx eller sida-2.ascx.
Slutligen så skapar du två filer som heter sida-1.ascx och sida-2.ascx - det är dessa som är användarkontroller. I dessa sidor kan du ha det du vill inkludera. En sån användarkontroll kan se ut så här:
<%@ Control Language="VB" %>
Här placerar du det du vill ska synas på en sida.
Hoppas att jag svarade på rätt fråga bara.


