webForumDet fria alternativet

XSL istället för .net-kontroller?

.NET

3 svar · 357 visningar · startad av inspiro

Medlem sedan sep. 2005673 inlägg
Frågan#1

Hade en intressant diskussion på jobbet huruvida det är bättre att använda xsl(t) istället för .nets inbyggda kontroller. :) Exempelvis för att än mer separera presentation och logik, xsl-syntax som kan vara trevlig, bättre plattformsoberoende om allt som skickas ut är ren xml osv...

Vad tycker ni?

Medlem sedan jan. 2004501 inlägg
#2

Känns som om det inte skulle spela någon strörre roll då .NET redan delar upp content och format. Så vist skulle man kunna använda XSL för att formatera den datan som man spottar ut och spotta ut en XML fil. Ser dock inte vad man vinner på detta? Asså HTML är fortfarande platformsoberoende och du måste ända formatera din XML till HTML. Det blir bara ett extra led.

Är man lite smart så bygger man upp hela sidan med Div:ar och sedan använder man CSS.

Medlem sedan sep. 2005673 inlägg
#3

Nja, du bygger ju ändå in dig ganska rejält om du använder .net-kontroller. Tänk dig en page generator som kastar ut ren xml och sedan transformerar du xmlen med en xsl till html eller vad som helst. Smidigt om du exempelvis arbetar med olika skins. Skalbarheten är ju total. .net-kontroller har ju dessutom problemet att de inte genererar korrekt kod. Tänker jag fel?

Medlem sedan dec. 19996 721 inlägg
#4

Nej, du tänker rätt, och XML/XSLT är helt klart en bra väg att gå om man vill ha hög anpassningsbarhet. Dock måste man tänka på att man tappar .net-kontrollernas funktioner (om man renderar hela sidan genom XSLT), så det passar ju bäst när det gäller rena presentationssidor. Dessutom är XslTransform löjligt slött i .NET (mycket långsammare är gamla MSXML)

Ta gärna en titt på detta trevliga, danska .NET-CMS, som bygger på XSL till stora delar.

https://www.umbraco.org

260 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)