webForumDet fria alternativet

Instansiera basklass när sida laddas?

.NET

9 svar · 430 visningar · startad av maqe

Medlem sedan dec. 2003824 inlägg
Frågan#1

Jag har en klass som heter PageData som innehåller lite properties som t.ex. PageName mm
När sidan laddas skulle jag vilja att denna instansierades, hur gör jag detta?

Medlem sedan juli 200498 inlägg
#2

Hej,

Är det typ som en "egen" System.Web.UI.Page du är ute efter (med lite eget i) ?

Eller är jag helt fel ute?

/m

Medlem sedan dec. 2003824 inlägg
#3

Ja precis, jag har en abstract klass som heter basepage som ärver från usercontrol än sålänge har den bara en abstract property som heter current och genom den har jag tänkt att jag skall komma åt en property "pagename" i min pagedata klass.
När sidan laddas så vill jag ju att min pagedata klass skall instansieras med data från t.ex. en databas. Jag är inte så duktig på architekur men jag tänkte ge det ett försök.

Medlem sedan dec. 2003824 inlägg
#4

Är detta en dum fråga eller har jag förklarat dåligt? :)

Medlem sedan dec. 19996 721 inlägg
#5

Det låter mer som att du borde ha en basepage-klass som alla sidorna får ärva, dvs. ingen egen instans

Medlem sedan dec. 2003824 inlägg
#6

Kan man läsa om detta någonstans med basklasser för webbar?

Medlem sedan dec. 2003824 inlägg
#7

Bara att ha en klass "basepage" blir ju inte riktigt som jag tänkt. Jag vill komma åt en sidas propertys från både en usercontrol och från en aspx sida. Därav tänkte jag använda mig av en pagedata klass med t.ex. pagename etc.

Medlem sedan dec. 19996 721 inlägg
#8

maqe skrev:

Jag vill komma åt en sidas propertys från både en usercontrol och från en aspx sida.

Det går alldeles utmärkt med en vanlig basepage

i usercontrol

basepage sidan=this.Page as basepage;
if (basepage!=null)
{
   sidan.MinProperty="pulvermos";
}
Medlem sedan dec. 2003824 inlägg
#9

Om vi säger att jag har en abastract klass PageBase som ärver från Page och den innehåller några metoder som jag vill ha med sen har jag en PageData klass som innehåller propertys typ PageName etc. När sidan laddas så vill jag hämta data från databasen beroende på vilket id som finns i querystringen. Någonstans måste jag skapa ett pagedata objekt och fylla det med data men jag förstår inte hur?

Medlem sedan dec. 19996 721 inlägg
#10

Självklart får du ha en PageData-klass om du vill (och den kan du ju instantiera i Load eller Init t.ex.), men jag tycker fortfarande att du bör använda en page-klass som ärver från Page (eller från din abstraka page).

273 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
144 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)