[ASP.NET] xml/xsl en server controls

Pagina: 1
Acties:
  • 116 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • zoepercavia
  • Registratie: September 2001
  • Laatst online: 10-09 20:14
Ik heb net even een paar uur me in zitten lezen in ASP.net en heel veel dingen zien er vrij veelbelovend uit. Vooral de snelheid om formulieren in elkaar te zetten spreekt me erg aan... met name de server controls kunnen de ontwikkeltijd enorm verkorten.

Nu ben ik bezig een website te ontwikkelen (in classic ASP) die volledig flexibele layouts moet hebben. Hiervoor is mijn hele data-output in XML, vervolgens wordt server-side er een stylesheet overheen gegooid afhankelijk van de userinput, bv.:
/artikel.asp?id=1 -> geeft gewone leesview
/artikel.asp?id=1&m=print -> geeft print layout
/artikel.asp?id=1&m=wap -> geeft wap pagina

dit systeem werkt erg soepel en je kan met groot gemak een nieuwe layout voor dezelfde data maken (gewoon nieuwe XSL maken). Nu komt het probleem.

Omdat de code van de ASP.net server controls gegenereerd wordt kan ik naar mijn idee dit oude systeem niet meer gebruiken. Alle output wordt immers gegenereerd door de XSL in het oude systeem en daar kunnen geen server controls gegenereerd worden :(

Naar mijn idee is dit probleem onoverkombaar in ASP.net, ik moet dus ofwel op zoek naar een nieuwe manier om gemakkelijk veel verschillende layouts te maken voor dezelfde data in ASP.net of blijven bij ASP classic...

Sla ik nu helemaal de plank mis? Of zijn er misschien andere manieren in ASP.net om hetzelfde te bereiken?

Panacea.NL als je geinteresserd bent in IT en Geneeskunde!


  • alley
  • Registratie: Mei 2002
  • Laatst online: 19-04-2023

alley

ahuh

XSLT is absoluut geen probleem voor ASP.NET... het zit er zelfs native in, geen gezeur meer met ActiveX/COM objecten.

Je kunt een Artikel.aspx aanmaken bijvoorbeeld, die helemaal leeg is qua HTML code.
In de Page_Load in je codebehind file haal je het bijbehorende artikel uit de database, convert 'm naar XML en gooi de benodigde XSLT eroverheen.

I am always doing that which I can not do, in order that I may learn how to do it. (Pablo Picasso)


  • zoepercavia
  • Registratie: September 2001
  • Laatst online: 10-09 20:14
ja dat snap ik.. maar dan kan je dus geen gebruik maken van server controls... daar ligt mijn probleem

Panacea.NL als je geinteresserd bent in IT en Geneeskunde!


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 20:17

mulder

ik spuug op het trottoir

Wat versta jij onder servercontrols dan?

oogjes open, snaveltjes dicht


Verwijderd

ik gok op: Input validators, buttons met onClick acties

  • zoepercavia
  • Registratie: September 2001
  • Laatst online: 10-09 20:14
iruoy, dat bdoel ik ja...

Panacea.NL als je geinteresserd bent in IT en Geneeskunde!


Verwijderd

Ik denk niet dat het mogelijk is om servercontrols in ASP.Net te gebruiken. Zelf ben ik nu ook dagelijks bezig met .Net en XML/XSLT. voor de edit schermen gebruiken wij gewoon de server controls voor, maar voor data tonen de "oude" manier van processen.

Waarom het niet mogelijk is, is dat als je naar de HTML kijkt die .Net voor je genereerd als de pagina opgevraagd wordt vaak iets anders is dan dat jij verwacht. Voorbeeldje. Bij ons inlog scherm staan 2 inputboxes. txtNaam is er 1 van. In de HTML staat echter:

MyUserControls:Inloggen1:txtNaam

de code wordt dus nog even gecompileerd voordat hij naar de browser gestuurd wordt en dit is niet mogelijk als er XSLT gebruikt wordt, omdat dit juist runtime gebeurd en niet voordat de JIT aan de gang gaat.

  • Marcelloz
  • Registratie: Juli 2002
  • Laatst online: 23-09 21:56

Marcelloz

IT dude with a beard

Server controls zijn leuk totdat je tegen de beperkingen gaat aanlopen. Op dat moment ga je ze er allemaal uitflikkeren :)
Web is nog steeds iets totaal anders dan Win32.

There are better things in life than alcohol, but alcohol makes up for not having them.


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 20:17

mulder

ik spuug op het trottoir

Server controls zijn pas leuk als je weet wat je je ermee kan. Ben zelf nog niet zo'n held, maar er kan zat mee, snap niet wat het probleem is, je kunt toch gewoon dynamisch (.Net) buttons genereren en hier events aanhangen?

oogjes open, snaveltjes dicht


  • tijn
  • Registratie: Februari 2000
  • Laatst online: 01-08 16:49
Marcelloz schreef op 22 augustus 2002 @ 14:05:
Server controls zijn leuk totdat je tegen de beperkingen gaat aanlopen. Op dat moment ga je ze er allemaal uitflikkeren :)
Web is nog steeds iets totaal anders dan Win32.
Als je tegen beperkingen aanloopt dan ga je ze toch gewoon subclassen en de beperkingen er zelf uitslopen? ;)

Cuyahoga .NET website framework


  • zoepercavia
  • Registratie: September 2001
  • Laatst online: 10-09 20:14
Marcelloz schreef op 22 augustus 2002 @ 14:05:
Server controls zijn leuk totdat je tegen de beperkingen gaat aanlopen. Op dat moment ga je ze er allemaal uitflikkeren :)
Web is nog steeds iets totaal anders dan Win32.
dat bdoel ik :)
een van de beperkingen is dus dat je ze niet in combinatie met XML/XSLT kan gebruiken.
Wat ik er tot nu toe over gelezen heb ziet het er allemaal behoorlijk cool uit (volledig interactieve tabellen met datagrid, snel te vullen dropdownlists, enz...). Allemaal dingen die je ook wel in ASP classic kan maken maar veel meer roundtrips van de pagina nodig hebben dan in ASP.net.

Maar ik ga denk ik toch niet mn hele site opnieuw schrijven voor de server controls (alhoewel caching en de mogelijkheid van C# ook wel fijn is :()

Panacea.NL als je geinteresserd bent in IT en Geneeskunde!


  • Marcelloz
  • Registratie: Juli 2002
  • Laatst online: 23-09 21:56

Marcelloz

IT dude with a beard

Roundtrips....
mijn mening :
ASP.Net is the king of the roundtrip
ASP.Net is een postback machine

Ik weet dat de verbindingen steeds sneller worden, maar de hoeveelheid roundtrips die asp.net genereert bij het gebruik van server controls gaat mij veel te ver. Probeer eens het kalenderobject, gek wordt je ervan. Ok, je kan de postback uitzetten, maar dan gaat redelijk veel functionaliteit verloren.

Cool zijn server controls aan de oppervlakte. Uiteindelijk moet je zelf het meeste nog implementeren. Beetje schone schijn als je het mij vraagt. Server controls zijn ok voor WinForm applicaties, maar voor ASP.Net applicaties moet je jezelf gaan afvragen of je ze wel wilt, want je levert behoorlijk wat in (zoals xslt)...

There are better things in life than alcohol, but alcohol makes up for not having them.


  • tijn
  • Registratie: Februari 2000
  • Laatst online: 01-08 16:49
Marcelloz schreef op 22 augustus 2002 @ 16:11:
Roundtrips....
mijn mening :
ASP.Net is the king of the roundtrip
ASP.Net is een postback machine

Ik weet dat de verbindingen steeds sneller worden, maar de hoeveelheid roundtrips die asp.net genereert bij het gebruik van server controls gaat mij veel te ver. Probeer eens het kalenderobject, gek wordt je ervan. Ok, je kan de postback uitzetten, maar dan gaat redelijk veel functionaliteit verloren.
Mijn ervaring is dat mits een postback vergezeld gaat van een beperkte hoveelheid data, er niets mis mee is. Ik heb in het verleden wel eens een asp kalendertje gemaakt (helemaal server-side) waarvan de performance net zo goed was als een client-side javascript exemplaar. Het asp kalendertje deed het alleen met wel met alle browsers en bevatte nog niet de helft van de code die nodig was voor de client-side kalender.
Cool zijn server controls aan de oppervlakte. Uiteindelijk moet je zelf het meeste nog implementeren. Beetje schone schijn als je het mij vraagt. Server controls zijn ok voor WinForm applicaties, maar voor ASP.Net applicaties moet je jezelf gaan afvragen of je ze wel wilt, want je levert behoorlijk wat in (zoals xslt)...
Je hebt ook altijd nog een xml server control die je zo op je webform kunt gooien. Een van de properties van dat ding is TransformSource waar je een xslt bestand aan kunt hangen. Verder nog niets mee gedaan, maar hij zit er wel in :).

Cuyahoga .NET website framework


  • Marcelloz
  • Registratie: Juli 2002
  • Laatst online: 23-09 21:56

Marcelloz

IT dude with a beard

Uit ervaring weet ik dat een gebruiker het 'flippen' van een web-pagina irritant vindt. Dat gebeurt ook na een postback. zoveel mogelijk vermijden dus. Je hebt wel gelijk dat er minder code nodig is voor zulk soort dingen. Zaak is altijd om de juiste balans te vinden tussen thick en thin client/server. Onnodige postbacks horen daar niet bij.
Interessante hint over die server control... :) da ga ik eens van dichterbij bekijken...

There are better things in life than alcohol, but alcohol makes up for not having them.


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 20:17

mulder

ik spuug op het trottoir

Marcelloz schreef op 22 augustus 2002 @ 18:46:
Uit ervaring weet ik dat een gebruiker het 'flippen' van een web-pagina irritant vindt. Dat gebeurt ook na een postback. zoveel mogelijk vermijden dus.
SmartNavigation, niet dat soms geweldig werkt...

oogjes open, snaveltjes dicht

Pagina: 1