Det fremgår egentlig af tildelingen: det betyder at det der har attributten skal køres fra serveren. Det betyder bl.a. at du kan få fat i den fra din webapplikation på serveren, men også at det er en lille smule tungeren end en standard html kontrol der kun afvikles på klienten
Både klient og server kontroller kører på klienten, men serverkontroller har viewstate, hvilket betyder at de har en variabel med frem og tilbage hver gang der gøres noget på applikationen. Viewstate er, som ladyhawke hun skriver, lidt tungere end en klient kontrol. Man bruger serverkontroller på en navneformular, hvor det er praktisk at kunne hente noget frem igen, som brugeren har indtastet, i tilfælde hvor der valideres på et felt. Hvis der ikke skal valideres på formen, kan det betale sig at bruge klientkontroller.
trumf>> så hvis man bruger EnableViewstate=false, så mister man pludselig alle siner server-kontroller? Nej vel.
Selfølgelig er server-controller meget mere end viewstate, og man skal igen skelne mellem webcontrols og htmlcontrols. Fælles for dem alle er dog at de bliver oprettet som et object på serveren som man kan manipulere med på bedste OO-facon, og ikke via snørklede inline scripting m.m. som i asp eller php.
cyberfessor>> Hvis du mener det jeg skriver er forkert, så skal du vist læse op på din certificering - MCP i ASP.NET
Jeg synes du skal komme med en bedre forklaring i stedet for at flame fila's spm med nedladende bemærkninger til andre.
Ellers kan du oversætte dette (fra MS's bog til MCP i ASP.NET)
You can use server controls or HTML controls on a Web form. What’s the difference? Basically, server controls are a superset of HTML controls and offer the advantages described in Table 4-1.
Table 4-1. Server Controls vs. HTML Controls
Feature:
Server events Server controls: Trigger control-specific events on the server. HTML controls: Can trigger only page- level events on server (postback).
State management Server controls: Data entered in a control is maintained across requests. HTML controls: Data is not maintained; must be saved and restored using page-level scripts.
Adaptation Server controls: Automatically detect browser and adapt display as appropriate. HTML controls: No automatic adaptation; must detect browser in code or write for least common denominator.
Properties Server controls: The Microsoft .NET Framework provides a set of properties for each control. Properties allow you to change the control’s appearance and behavior within server-side code. HTML controls: HTML attributes only.
Og så skal man lige huske at mange valideringer laves bedre og hurtigere med JavaScript, men det står der selvfølgelig ikke noget om i MS's bog, da JS er SUN :-)
trumf>> du fik det til at lyde som om at det som gjorde server-kontroller til server-kontroller var at de havde viewstate. Det er jo kun en del af det, og selvom man disabler viewstate er server-kontrollerne jo stadigvæk server-kontroller.
lidt sjov opdeling der forresten er i den bog. Oftest bliver alle tags med en runat="server" opfattet som server-kontroller, og de bliver så igen opdelt i Webcontrols og Htmlcontrols (på samme måde som de to namespaces i System.Web-assemblien). Og ud fra den definition er serverkontroller objekter på serveren der mapper til steder på html-siden hvor de forskellige tags er placeret. Man kan altså abstrahere fra selve layuoutet og manipulere med det uden at skulle rode direkte i html'en.
I bogen der bliver server controls rigtig nok brugt omkring tags med runat="server" på sig, men at de så bruger navnet html controls for dem der ikke har runat="server" kan virke forvirrende, da htmlcontrols jo også figurerer under System.Web.UI.HtmlControls.
og ang. JS, så er det altså en Netscape-opfindelse.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.