Replace default controller of Episerver Forms
Episerver Forms is Block, stay in a ContentArea (inside a Page).
Without JavaScript, Forms post data from Visitor to its Page.
With JavaScript, Forms post data from Visitor to its CoreController (which is configured in Forms.config)
<episerverforms …
coreController=”/EPiServer.Forms/DataSubmit”
…
</episerverforms>
Default CoreController is EPiServer.Forms.Controllers.DataSubmitController, which is a normal ASP.NET MVC controller.
If you want to use your own controller, here is a guide (tested with AlloyMVC and Forms 2.0):
- Make a controller. GetFormInitScript() and Submit() are most important methods.
- map the route in Global.asax
RouteTable.Routes.MapRoute(“DemoSubmitFormController”, “demo/{controller}/{action}”, new { controller = “demosubmitform” , action = “Index” });- Modify Forms.config (inside the modules/_protected folder)