[ASP.NET MVC 3]Textbox server-side edit?

Permalänk
Medlem

[ASP.NET MVC 3]Textbox server-side edit?

Någon som har ett bra exempel på detta:

Sida med textbox och en knapp, skriv in texten, tryck på knappen och texter postas till server, som härjar runt med texten, och sedan ändrar texten i texboxen till den nya förändrade texten..

Har googlat runt, hittat tusen bra exempel (bla. MVC music store som jag börjat köra igenom..) men skulle vilja ha något som visar på just det jag beskrev ovan.

Permalänk
Medlem

Nu vet jag inte vilken Viewengine du använder men komme använda mig av Razor här.

Först skriv dig en model klass som kommer lagra det mesta data du kommer använda dig av på sidan.

PS Notera allt jag skriver här är kopierat rakt från huvudet och inte testat alls i VS så kan bli någon liten miss.

T.ex. i detta fall

public class ModelTextBox { public string Text { get; set; } ... o.s.v vad du nu har... }

Sedan skapa en Kontroller klass antar att du redan gjort detta förvisso Fixa en till Metod här för din sida som jag oxo antar att du har.

Sedan skapa objektet om du vill behövs dock inte.

return View(objectname);

Högerklicka på metodens du skapat väll Generate View, Du kan här välja Empty ifall du vill eller så kan du skapa en strong typed mot objektet du just skrev. T.ex. Insert. Men om du skippar det så är det ganska så lätt

Det enda du behöver skriva för att mappa en strong typed View är.
@Html.TextBoxFor(model => model.Text)

-------

Annat tips är att du kollar och läser upp lite om ViewBag En dynamiskt skapad objekt som du kan kasta in massor av skit i för att sedan läsa ut. Bra för saker som ibland ska vara där och ibland inte. T.ex. Ibland vill du ha de starkt typad men allt passar ju inte in som det. T.ex saker som ska ändra saker i head layouten t.ex.

För att använda dig av ViewBag så är det väldigt lätt. T.ex. kasta in vilket objekt du vill i Controllern
ViewBag.TextMessage = "Hello World";

Sedan i Viewn enda du behöver göra är att skriva @ViewBag.TextMessage där du vill skriva ut texten. Notera dock arbetar du med annat än strings behöver du kasta om dem då Viewn inte vet vad det är för datatyp annars. SAMT du måste kolla då med ifall objektet finns eller inte.

Och självklart kan du använda detta med för textbosar t.ex. <input type="text" value="@ViewBag.TextMessage" />

-----

För att fånga upp datan, det är för lätt speciellt med stark typade bojekt. Vad du gör är att du skapar en ny Metod med samma namn. Lägger till attributet [HttpPost] Före metoden. Samt den ska ta en parameter, som mitt exempel ovan ModelTextBox. Här kommer den fånga upp allt och bara arbeta vidare.

Visa signatur

Speldator: i7-8700k, 32GB DDR4, RTX2080
Server 1: SB 2500k, MZI -P67GD55, 32GB DDR3, Corsair MX 240GB SSD
Surface Pro 2017, Konsoler: Typ alla, Oculus Rift

Permalänk
Medlem

Sorry blir en post till blir för mycket annars i en enda. Vill bara tipsa dig om denna tutorial serie: http://www.pluralsight-training.net/microsoft/olt/Course/Toc....

Pluggar du dessutom och har CSN så rekommenderar jag dig att skaffa senare 90 dagas prova på biten från dreamspark. Så du får access till allt om Mvc3 där även de avancerade bitarna. https://www.dreamspark.com/Products/Product.aspx?ProductId=40

Visa signatur

Speldator: i7-8700k, 32GB DDR4, RTX2080
Server 1: SB 2500k, MZI -P67GD55, 32GB DDR3, Corsair MX 240GB SSD
Surface Pro 2017, Konsoler: Typ alla, Oculus Rift

Permalänk
Medlem

Tackar tack, då är jag ändå på rätt spår.