Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class ExampleController : Sitecore.Mvc.Controllers.SitecoreController
- {
- public override ActionResult Index()
- {
- return View("Index");
- }
- [HttpPost]
- public ActionResult Index(string formPostData)
- {
- ViewBag.SaveForLater = formPostData;
- return Index();
- }
- }
- @using Sitecore.Mvc
- @using (Html.BeginRouteForm(Sitecore.Mvc.Configuration.MvcSettings.SitecoreRouteName, FormMethod.Post))
- {
- @Html.AntiForgeryToken()
- var term = ViewBag.SaveForLater as string;
- if (!string.IsNullOrEmpty(term))
- {
- <p>Submitted: @term</p>
- }
- <p>
- @Html.Sitecore().FormHandler("Example", "Index")
- <input type="text" name="formPostData" placeholder="Enter something" />
- <input type="submit" name="submit" value="Search" />
- </p>
- }
- @model Website.Models.TestViewModel
- @using (Html.BeginForm())
- {
- @Html.LabelFor(model => model.Text)
- @Html.TextBoxFor(model => model.Text)
- <input type="submit" value="submit" />
- <input type="hidden" name="fhController" value="TestController" />
- <input type="hidden" name="fhAction" value="Index" />
- }
- namespace Website.Models
- {
- public class TestViewModel
- {
- public string Text { get; set; }
- }
- }
- public class ValidateFormHandler : ActionMethodSelectorAttribute
- {
- public override bool IsValidForRequest(ControllerContext controllerContext, MethodInfo methodInfo)
- {
- var controller = controllerContext.HttpContext.Request.Form["fhController"];
- var action = controllerContext.HttpContext.Request.Form["fhAction"];
- return !string.IsNullOrWhiteSpace(controller)
- && !string.IsNullOrWhiteSpace(action)
- && controller == controllerContext.Controller.GetType().Name
- && methodInfo.Name == action;
- }
- }
- namespace Website.Controllers
- {
- public class TestController : Controller
- {
- public ActionResult Index()
- {
- return View();
- }
- [HttpPost]
- [ValidateFormHandler]
- public ActionResult Index(TestViewModel model)
- {
- return View(model);
- }
- }
- }
- public class MainViewModel
- {
- public LoginViewModel LoginModel { get; set; }
- public RegisterViewModel RegisterModel { get; set; }
- }
- public class RegisterViewModel
- {
- // Your model properties
- }
- public class LoginViewModel
- {
- // Your model properties
- }
- public ActionResult MainView()
- {
- MainViewModel model = new MainViewModel
- {
- LoginModel = new LoginViewModel(),
- RegisterModel = new RegisterViewModel()
- };
- return View(model);
- }
- @Html.Partial("_Login", Model.LoginModel)
- @Html.Partial("_Register", Model.RegisterModel)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement