Back to Devexpress

SpreadsheetSettings.CallbackRouteValues Property

aspnetmvc-devexpress-dot-web-dot-mvc-dot-spreadsheetsettings.md

latest4.0 KB
Original Source

SpreadsheetSettings.CallbackRouteValues Property

Defines the callback routing logic by specifying the names of a Controller and an Action which should handle callbacks.

Namespace : DevExpress.Web.Mvc

Assembly : DevExpress.Web.Mvc5.v25.2.dll

NuGet Package : DevExpress.Web.Mvc5

Declaration

csharp
public object CallbackRouteValues { get; set; }
vb
Public Property CallbackRouteValues As Object

Property Value

TypeDescription
Object

An object containing the Controller and Action names.

|

Remarks

The CallbackRouteValues property allows you to pass only simple data (that do not require serialization) to the controller. If you need to send complex data, use one of the following approaches.

  1. Use the CallbackRouteValues collection to pass only the information that is required to recreate your complex model instance in the controller action (e.g., row keys or unique identifiers).
  2. Convert your complex model class into a simple data type. For instance, use the JSON encoding to pass the model to the controller as a string. Then, in the controller code, decode the passed value to get the model.
cshtml
@Html.DevExpress().Spreadsheet(settings => {  
    settings.Name = "Spreadsheet";  
    ...  
    settings.CallbackRouteValues = new {  
        Controller = "Home",  
        Action = "IndexPartial",  
        myComplexData = Json.Encode(Model.myListData)  
    };  
}).GetHtml()
csharp
public ActionResult IndexPartial(string SelectedIds) {  
    List<int> myData = System.Web.Helpers.Json.Decode<List<int>>(myComplexData);  
    ...  
}

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the CallbackRouteValues property.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

asp-net-mvc-spreadsheet-work-with-database/CS/DXWebApplication23/Controllers/HomeController.cs#L27

csharp
settings.Name = "SpreadsheetName";
settings.CallbackRouteValues = new { Controller = "Home", Action = "SpreadsheetPartial" };
settings.Width = System.Web.UI.WebControls.Unit.Percentage(100);

asp-net-mvc-spreadsheet-work-with-database/VB/DXWebApplication23/Controllers/HomeController.vb#L29

vb
settings.Name = "SpreadsheetName"
settings.CallbackRouteValues = New With {Key .Controller = "Home", Key .Action = "SpreadsheetPartial"}
settings.Width = System.Web.UI.WebControls.Unit.Percentage(100)

See Also

Spreadsheet

Get Started

Callback-Based Functionality

SpreadsheetSettings Class

SpreadsheetSettings Members

DevExpress.Web.Mvc Namespace