Current filter:
                                You should refresh the page.
                                  • We have an MVC 5 project that has been around for a while, including several DevExpress releases. Lately, every single time we go to update to the latest DevExpress version, everything is just great, except when attempting to figure out how in the world we update DevExtreme.

                                    We are referencing DevExtreme via the MVC wrappers (so using things like Dashboard for example). We have a reference to the DevExtreme.AspNet.Mvc and DevExtreme.AspNet.Data packages.

                                    A while ago we actually had to "upgrade" from the "old" Dashboard to the "new" Dashboard?, and stumbled upon:


                                    In that document, under Wrappers -> Automatic Integration, it *appears* to say something along the lines of "just add these two lines to your web.config and DevExpress libraries (via web handles or some other magic) will automagically serve the correct js/css for devextreme and its dependencies!"

                                    So, we ended up doing that, since it seemed faster than trying to track down all those dependencies. We found we needed to comment out a bunch of lines from our RegisterBundles code (basically all the dependencies, but keeping just dx.all.js and dx.aspnet.mvc.js and the like) otherwise we'd get errors about script loads clobbering one another.

                                    That RegisterBundles code came from here:


                                    Which seems to have an entirely different opinion on how to integrate DevExtreme (not just two lines in web.config, but a whole bunch of file copies and script and style bundles and other stuff).

                                    We also always try to just click the "Upgrade DevExtreme Resources" right click menu item in Visual Studio, but it will fail with messages about not being able to remove DevExtreme.AspNet.Data because the DevExtreme.AspNet.Mvc package depends on it.

                                    We also found this: which makes it seem that maybe that is actually the best way to reference DevExtreme when using MVC?

                                    So... of the various documented ways of support DevExtreme MVC on MVC 5, which is the "correct" one for us? I'm hoping the correct one might be along the lines of:

                                    1. Reference the (latest version of the) DevExtreme.AspNet.Mvc package
                                    2. Add those automagic lines to web.config
                                    3. Done!
                                    4. Also, you can delete the dependency cruft of cldr and globalize and other various local js files, since DevExtreme/Express serves them via those web.config lines from... somewhere else????
                                • Stason (DevExpress Support) 10.21.2019

                                  Hello Cory,

                                  Thank you for the description. Our Dashboard is implemented using DevExtreme frameworks and thus it is required to use DevExtreme.
                                  From what I gather, you are using the MVC Dashboard extension only. If this is so, the Required Client Libraries help article contains two main approaches adding required libraries for the MVC Dashboard extension. You can add them manually or automatically.
                                  The best way to get started is to create an MVC Dashboard application from our Template Gallery to see how all the scripts are added to the application.

                                  If you are using DevExtreme widgets and want to use the Dashboard. I suggest you take a look at the HTML JavaScript Dashboard Control where you do not need to worry about dependency and add the required client libraries only once using the approach from the following article -
                                  Client-Side Configuration (Global Namespaces)

                                  Let me know if you have further questions.

                                • Cory Crooks 10.21.2019

                                  We are actually using the DevExtreme MVC extensions (so the MVC wrappers over DevExtreme ... stuff) for things like the grid and some others. We are ALSO using the Dashboard. There are ALSO places in our code where we are using js code to call into DevExtreme as well... it just depends.

                                  I guess my question is if we follow


                                  Will that:

                                  1. Satisfy the needs of the general DevExtreme MVC extensions
                                  2. Allow us to simply delete the existing copies of the various DevExtreme js/css dependencies we have laying around (assuming that web.config "resources" serves the files out of some embedded resources in the devexpress libraries themselves)
                                  3. Set our "new version of devexpress was released" upgrade path to:
                                      a. Update the DevExtreme MVC nuget package
                                      b. Copy over the updated dx.aspnet.mvc.js and files (from the latest DevExpress install)
                                      c. Done!

                                1 Solution

                                Creation Date Importance Sort by

                                Hi Cory,

                                Thank you for the update. This algorithm is correct. It is unnecessary to add additional resources manually when you are using the resources section in web.config.
                                I want only to note that it is necessary to use the same versions of server-side and client-side packages, i.e. it is necessary to make sure that:

                                1. The version of the DevExtreme NuGet packages, DevExpress controls and dx.aspnet.mvc.js file is the same.
                                2. The version of the AspNet.Data NuGet package and the file is the same.
                                Let me know if you have further questions.