Current filter:
                                You should refresh the page.
                                  • UPD.  Starting from v19.1, the Web Dashboard Viewer is not included in our installation packages and its API is removed from our source code. The following error occurs:
                                    "The type or namespace name 'ASPxDashboardViewer' does not exist in the namespace 'DevExpress.DashboardWeb' (are you missing an assembly reference?)"

                                    See Migrate from Web Viewer to Web Dashboard in ASP.NET Web Forms for the actual information on how to migrate to the Web Dashboard Control.

                                    In v17.1 we put the old ASPxDashboardViewer into maintenance mode and highly recommend using ASPxDashboard in the ViewerOnly mode instead.
                                    To learn more about preparing an application with ASPxDashboard, see ASP.NET Dashboard Control.
                                    Take into account the following changes when migrating to the Web Dashboard:

                                    1. Embedding Client Libraries
                                    The Web Dashboard control requires additional client-side libraries along with Web Viewer scripts:
                                         - jQuery UI 1.12.1+
                                         - knockout 3.4.0+
                                         - ace.js
                                    If you have included libraries for the Web Viewer by adding the "Resources" section to the application's Web.config file, all required scripts are added automatically.
                                    To include the required scripts manually, attach the jQuery UI,Knockout,   and Ace libraries to the web page in addition to the scripts used by Web Viewer. The Web Dashboard also requires the jQuery 3.3.1+  script. Thus, make sure that you are using the actual version of jQuery:

                                    To learn more about required resources, see Required Client Libraries.

                                    2. Providing Dashboards
                                    Let's see several examples demonstrating how to provide dashboards for a new control when migrating from the Web Viewer:
                                    Example 1.  Load a dashboard XML file.
                                    Change the ASPxDashboardViewer.DashboardSource property to ASPxDashboard.DashboardXMLPath.




                                    If there is the if (!IsPostBack) condition in the Web Viewer code, remove it when migrating to the Web Dashboard Control.

                                    Example 2.  Load a dashboard created at design time.
                                    Change the ASPxDashboardViewer.DashboardSource property to ASPxDashboard.DashboardType.




                                    Example 3.  Load a dashboard at runtime.
                                    The ASPxDashboardViewer.DashboardLoading event changes to ASPxDashboard.DashboardLoading. The new control accepts the dashboard definition in the System.Xml.Linq.XDocument format instead of System.String.

                                    protected void Page_Load(object sender, EventArgs e) { ASPxDashboardViewer1.DashboardId = "File1"; } protected void ASPxDashboardViewer1_DashboardLoading(object sender, DevExpress.DashboardWeb.DashboardLoadingEventArgs e) { if(e.DashboardId == "File1") { string definitionPath = Server.MapPath("~/File1.xml"); string dashboardDefinition = File.ReadAllText(definitionPath); e.DashboardXml = dashboardDefinition; } }


                                    protected void Page_Load(object sender, EventArgs e) { ASPxDashboard1.InitialDashboardId = "File1"; } protected void ASPxDashboard1_DashboardLoading(object sender, DevExpress.DashboardWeb.DashboardLoadingWebEventArgs e) { if(e.DashboardId == "File1") { string definitionPath = Server.MapPath("~/File1.xml"); e.DashboardXml = XDocument.Load(definitionPath); } }

                                    Example 4. Load dashboards from the dashboard storage.
                                    To provide dashboards, create storage and register the dashboard in it. The code below demonstrates how to create the default File storage and register a dashboard:

                                    protected void Page_Load(object sender, EventArgs e) { DashboardFileStorage dashboardFileStorage = new DashboardFileStorage(System.Web.Hosting.HostingEnvironment.MapPath(@"~/App_Data/Dashboards")); ASPxDashboard1.SetDashboardStorage(dashboardFileStorage); }

                                    To learn more about different types of dashboard storages, see Preparing a Dashboard Storage.

                                    3. Providing DataThe Web Dashboard control provides equivalents to the events used in the Web Viewer.
                                         - Use the ASPxDashboard.ConfigureDataConnection event instead of ASPxDashboardViewer.ConfigureDataConnection to customize connection settings before Dashboard connects to a data store (a database, OLAP cube, etc.).
                                         - To include WHERE clauses in SQL queries, use the ASPxDashboard.CustomFilterExpression event instead of ASPxDashboardViewer.CustomFilterExpression.
                                         - Use the ASPxDashboard.DataLoading event instead of ASPxDashboardViewer.DataLoading to provide data for a data source assigned in code.
                                    4. Reloading Data
                                    In the Web Viewer, the ASPxClientDashboardViewer.ReloadData method is used to reload data in all dashboard data sources. In the Web Dashboard, we change the model of using data, and data is reloaded automatically. You can set the data reloading timeout in the Web Dashboard by handling the ASPxDashboard.ConfigureDataReloadingTimeout event. However, it is also possible to refresh data manually by calling the ASPxClientDashboard.ReloadData method (available starting with v18.2). To learn more about the Web Dashboard's caching mechanism, refer to the T520250: Web Dashboard - How to manage an in-memory data cache when the Client data processing is used KB article.

                                    5. Security
                                    When migrating from Web Viewer to Web Dashboard, it is necessary to take into account the following Web Dashboard specifics related to security:
                                         - Web Dashboard does not load dashboards with custom SQL queries by default. To learn how to enable this functionality, refer to the Custom SQL Queries article.
                                         -  For security reasons, the Web Dashboard control automatically checks whether a dashboard contains data connection parameters. In this case, the dashboard will not be loaded. Refer to the T453795 - How to protect parameters used to establish a connection to data when the Web/MVC Dashboard is used ticket to learn how to protect parameters used to establish a connection to data when the Web Dashboard is used.
                                    For more details on security in Web Dashboard, see Security Considerations.

                                    6. Appearance
                                    The Web Dashboard control supports the same set of themes as ASPxDashboardViewer:
                                        - ASPxDashboard.ColorSchemeLight
                                        - ASPxDashboard.ColorSchemeLightCompact
                                        - ASPxDashboard.ColorSchemeDark
                                        - ASPxDashboard.ColorSchemeDarkCompact
                                    To learn more about appearance, see Appearance Customization.
                                    Note that compact themes are available starting with v17.1.6.

                                    7. Client-Side API
                                    The Web Dashboard control uses a similar client-side API (for exporting, coloring, requesting parameter values, etc.) as the Web Viewer except for the following differences:
                                      - Master Filtering
                                        1) When filtering is applied, or the state of the master filter item changes, the ASPxClientDashboard.ItemMasterFilterStateChanged event is raised instead of ASPxClientDashboardViewer.MasterFilterSet.
                                        2) When an end user clears selection in the master filter item, the ASPxClientDashboard.ItemMasterFilterStateChanged event is raised again instead of ASPxClientDashboardViewer.MasterFilterCleared.
                                      - Drill-Down
                                        1) After drill-down (or drill-up) is performed, the ASPxClientDashboard.ItemDrillDownStateChanged event is raised instead of ASPxClientDashboardViewer.DrillDownPerformed (or ASPxClientDashboardViewer.DrillUpPerformed).
                                    For general information about client-side customization, see Client-Side Functionality Overview and Web Dashboard - Client-Side API Overview articles.

                                    - Cannot find the DashboardLoaded event in the Web Dashboard.
                                    In the ASPxDashboard control, it is necessary to handle the ASPxDashboard.DashboardLoading event to customize the loaded dashboard on the server side.
                                    For instance, see the code below:

                                    protected void ASPxDashboard1_DashboardLoading(object sender, DevExpress.DashboardWeb.DashboardLoadingWebEventArgs e) { if (e.DashboardId == "Dashboard1") { Dashboard dashboard = new Dashboard(); dashboard.LoadFromXDocument(e.DashboardXml); //Customize Dashboard //... e.DashboardXml = dashboard.SaveToXDocument(); } }

                                    To see this approach in action, refer to the How to customize a dashboard before displaying it in a browser code example.

                                    - Dashboard is not loaded.
                                    It can occur due to security reasons. Note that the Web Dashboard control automatically checks whether a dashboard contains data connection parameters. In this case, the dashboard will not be loaded. To learn how to protect parameters used to establish a connection to data when the Web Dashboard is used, refer to the T453795 ticket.

                                    - Cannot find the FilterElementDefaultValues event in the Web Dashboard.

                                    The Web Dashboard control provides the SetInitialDashboardState event that allows specifying values of parameters and filter elements and other state parameters at one place in the handler.  To learn more about a dashboard state, see Manage Dashboard State.

                                    See Also
                                    How to migrate from DashboardViewerExtension to DahboardExtension working in the ViewerOnly mode
                                    Web Dashboard Documentation

                                • Mahesh Jathar 09.11.2017

                                  --"With v17.1 we put the old ASPxDashboardViewer into maintenance mode "

                                     That means we will not be able to use viewer mode(which enables switching between viewer and designer).  We have requirement to switch between viewer and designer . Please suggest.

                                • John (DevExpress Support) 09.11.2017

                                  Hi Mahesh,
                                  ASPxDashboardViewer is an old control that supports only the viewer mode. Our new Web Dashboard Control (ASPxDashboard ) provides two modes: viewer and designer. This topic describes how to replace the old control with the new one.
                                  It seems that you are using the new Web Dashboard Control, since it supports switching between viewer and designer.

                                • Mahesh Jathar 09.11.2017

                                  I got it. Thanks John.

                                • Vonsenite 10.18.2017

                                  When trying to migrate the Html.DevExpress().DashboardViewer() to Html.DevExpress().Dashboard() the DashboardViewer previously used:

                                  @Html.DevExpress().DashboardViewer(settings => { settings.Name = "DashboardViewer"; settings.CallbackRouteValues = new { Controller = "DashboardPartial", Action = "DashboardPartial", viewerName = Model.DashboardSourceModel.DashboardId }; settings.ExportRouteValues = new { Controller = "DashboardPartial", Action = "DashboardPartialExport" }; settings.RedrawOnResize = true; }).BindToSource(Model.DashboardSourceModel).GetHtml()

                                  When trying to migrate over the CallbackRouteValues, ExportRouteValues, RedrawOnResize, and BindToSource do not exist in the Dashboard extension. Do you have an example project of how to migrate these items especially the BindToSource which is passed a DevExpress.DashboardWeb.Mvc.DashboardSourceModel?

                                  Thanks for your help!

                                • John (DevExpress Support) 10.18.2017


                                  I've created a separate ticket on your behalf (T566581: How to migrate from ASPxDashboardViewer with CallbackRouteValues, ExportRouteValues, RedrawOnResize, and BindToSource to ASPxDashboard). It has been placed in our processing queue and will be answered shortly.

                                0 Solutions

                                Creation Date Importance Sort by