ASP.NET MVC introduce la possibilità di definire il layout in maniera autonoma, senza utilizzare i classici web control tipici di Web Form.
Per informazioni di base su ASP.NET MVC si veda http://mvc.aspitalia.com/
Per consentire la possibilità di definire comunque delle funzionalità in maniera rapida, senza dover implmentare tutto manualmente, sono presenti alcuni metodi aggiuntivi che aiutano nella definizione degli elementi fondamentali di una form:
- BeginForm
- CheckBox
- DropDownList
- EndForm
- Hidden
- ListBox
- Password
- RadioButton
- TextArea
- TextBox
Ad esempio, la più semplice delle form può essere definita in questo modo:
<% Html.BeginForm(); %> Nome: <%= Html.TextBox("FirstName");%><br /> Stato: <%= Html.DropDownList("States", Model.StateList); %><br /> <input type="submit" value="Test" /> <% Html.EndForm(); %>
Come si può notare, verrà aggiunta una form che fa il post sullo stesso controller invocato, con una TextBox ed una DropDownList che prende dalla proprietà StateList del Model la sorgente dati.
Una possibile alternativa è quella di usare anche questo costrutto:
<% using (Html.BeginForm()) { %> .. form ... <% } %>
E' anche possibile cambiare l'action a cui far riferimento al submit, perchè il metodo BeginForm accetta come parametro il nome della route, della action, del controller ed il metodo HTTP, più eventualmente attributi custom:
<% Html.BeginForm("TestAction", "TestController", FormMethod.Post); %> .. form .. <% Html.EndForm(); %>
Per intercettare l'invio dei dati della form precedente è necessario creare un Controller chiamato TestController, con questo codice:
public class TestController : Controller { [AcceptVerbs(HttpVerbs.Post)] public ActionResult TestAction() { return(View("TestConfirmed")); } }
All'interno della View chiamata TestConfirmed sarà implementato il codice necessario ad intercettare e processare i valori inviati.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Utilizzare una qualunque lista per i parametri di tipo params in C#
- Includere un button in un component ed esporne l'evento click in Angular
- #SQLServer #Modeling (codename Oslo) CTP di nov 2009 aggiornato per VS 2010 RC: http://u.aspitalia.com/fi
- .NET Conference Italia 2019 Live - Milano
- Accedere a file XML remoti con ASP.NET
- Creare una libreria CSS universale: Nav menu
- Utilizzare funzioni di istanza con le Azure Function
- A quick tour around Azure Dev Spaces