To help you better manage build processes for your XAF projects and employ CI/CD tools approved within your Enterprise (such as Azure Pipelines), DevExpress NuGet Gallery includes packages based on XAF assemblies in v18.2. You can configure NuGet package restoring with your feed URL, setup Visual Studio's NuGet Package Manager, and install appropriate packages from the lists below. We appreciate any thoughts you post to the comments section below, but it would also help us if you could answer one question in this survey.
DevExpress.ExpressApp.Core.All - install to the YourSolutionName.Module project.
DevExpress.ExpressApp.Win.All, DevExpress.ExpressApp.Web.All, and DevExpress.ExpressApp.Mobile.All - install to the YourSolutionName.Module.<PlatformName> and YourSolutionName.<PlatformName> projects where PlatformName is "Win", "Web" or "Mobile".
Note that metapackages with the "All" postfix add assemblies for all modules.
Spa UI has a single assembly so far - DevExpress.ExpressApp.Spa.
DevExpress.Persistent.BaseImpl and DevExpress.Persistent.BaseImpl.EF - install to projects depending on your ORM.
DevExpress.ExpressApp.Security.Xpo and DevExpress.ExpressApp.Security.EF - install to projects that use the Security Module features depending on your ORM.
Specific module packages
If you need to add assemblies only for modules you use, search for required XAF module packages by name and install them into required projects.
If your XAF application for the WinForms, ASP.NET and Mobile platforms uses only the ReportsV2, Validation, Security modules, install the following packages into its projects:
DevExpress.ExpressApp.ReportsV2, DevExpress.ExpressApp.Validation and DevExpress.ExpressApp.Security.Xpo (already includes DevExpress.ExpressApp.Xpo).
YourSolutionName.Module.<PlatformName> and YourSolutionName.<PlatformName>:
DevExpress.ExpressApp.ReportsV2.Win, DevExpress.ExpressApp.ReportsV2.Web and DevExpress.ExpressApp.ReportsV2.Mobile respectively;
DevExpress.ExpressApp.Validation.Win, DevExpress.ExpressApp.Validation.Web and DevExpress.ExpressApp.Validation.Mobile respectively;
DevExpress.ExpressApp.Security.Xpo (already includes DevExpress.ExpressApp.Xpo).
Frequently Asked Questions
You can find answers to most Nuget-related questions in the NuGet documentation (from Microsoft) and DevExpress NuGet Gallery. Below we also collected most popular topics for your convenience.
Q: When this approach may be helpful?
A: Nuget packages are most useful on build servers, because you do not need to install the DevExpress installation on them. Some customers reported that they saved hours of work and thousands of dollars on DevExpress upgrades with Nuget. However, Nuget's approach is more advanced (for instance, requires more manual work and time to get used to it) and has certain limitations. They make it not appropriate for everyone. If you don't really need it, you would rather avoid it. For instance, you may achieve similar build process automation if you install the appropriate DevExpress installation using custom build tasks (for instance, custom agents in Azure Pipelines). For more information on Nuget and its pros and cons, please refer to public community resources, because this general programming topic is not directly related to DevExpress.
Q: How to deal with design-time assemblies and XAF designers in the development environment?
A: Nuget does not install assemblies in GAC, so you will not have the same design time experience and designers as with the DevExpress installer. In particular, the Model Editor, Application & Module Designers will be unavailable. For more information, refer to the NuGet Limitations and Troubleshooting article.
Q: Can I use the Project Converter to upgrade my projects with Nuget packages?
A: No. ProjectConverter is intended to only update DevExpress assembly references. Refer to the Updating Packages article for more information. ProjectConverter is still useful to upgrade an XAF Web application. In these applications, our assembly version is used in the web.config file. When you upgrade your project to a new version, it's necessary to update our assembly version in web.config. ProjectConverter can do this for you.
Q: What do I do for older XAF versions?
A: You can create Nuget packages yourself, for instance, set up a server within your organization as described at http://blog.delegate.at/2016/02/26/nuget-packages-devexpress-components.html.
Q: Is it free?
A: No, you need to obtain a personal feed authorization key.