Add Control to a Project
- 2 minutes to read
This topic describes how to build Razor Pages and MVC Web Apps with the Spreadsheet component.
Before start, you should configure your Visual Studio project to use the Spreadsheet component.
Configure Razor Pages Web Apps
If you use a Spreadsheet in a Razor Pages web app, make the following adjustments:
Create a Razor Page. In the page model, implement
POSTandGETrequest handlers that return a SpreadsheetRequestProcessor response.public class SpreadsheetModel : Microsoft.AspNetCore.Mvc.RazorPages.PageModel { public IActionResult OnGetDxSpreadsheetRequest() { return SpreadsheetRequestProcessor.GetResponse(HttpContext); } public IActionResult OnPostDxSpreadsheetRequest() { return SpreadsheetRequestProcessor.GetResponse(HttpContext); } }Pass the handler URL to the DocumentRequestHandlerUrl(String) method.
@(Html.DevExpress().Spreadsheet("spreadsheet") .DocumentRequestHandlerUrl(Url.Page(pageName: null, pageHandler: "DxSpreadsheetRequest")) )Add an anti‑forgery token to every internal request the Spreadsheet sends to action handlers.
@inject Microsoft.AspNetCore.Antiforgery.IAntiforgery Antiforgery <script> function spreadsheet_beforeSend(spreadsheet, e) { e.request.setRequestHeader("RequestVerificationToken", "@Antiforgery.GetAndStoreTokens(Context).RequestToken"); } </script> @(Html.DevExpress().Spreadsheet("spreadsheet") .DocumentRequestHandlerUrl(Url.Page(pageName: null, pageHandler: "DxSpreadsheetRequest")) .ClientSideEvents(events => events.OnBeforeSend("spreadsheet_beforeSend") ) )
Configure MVC Web Apps
Follow the steps below to add a Spreadsheet to an MVC web page:
Create a new controller or open an existing controller (for example, the HomeController.cs file), and add an action that handles document commands as shown below:
using DevExpress.AspNetCore.Spreadsheet; ... public class HomeController : Controller { [HttpPost] [HttpGet] public IActionResult DxSpreadsheetRequest() { return SpreadsheetRequestProcessor.GetResponse(HttpContext); } }Use the Spreadsheet helper to add a spreadsheet to a Razor file (.cshtml):
@(Html.DevExpress() .Spreadsheet("spreadsheet") .DocumentRequestHandlerUrl(Url.Action("DxSpreadsheetRequest")) )To mitigate Cross‑Site Request Forgery (CSRF/XSRF) attacks, add anti‑forgery token validation to the Razor file and controller action.