#1. Do I have to include XAF UI dependencies in my project?
Our Web API Service relies on Visual Studio 2022 and a few non-visual cross-platform .NET 6 packages (example). These are like DevExpress.Data, DevExpress.Xpo, DevExpress.Document.Processor, and other core libraries. Though these packages have "XAF" or "ExpressApp" in their names, you do not need to pull XAF WinForms, WebForms and Blazor dependencies in your projects.
In other words, if you do not require XAF, you are not forced to use it. Optionally, you can tell the Solution Wizard to create the Web API Service inside a XAF Blazor UI app. This could be helpful to those who wish to incorporate a web Admin Panel and an embedded API server within the same package (for easier hosting and maintenance). Again, this is entirely up to you. You can always use the Web API Service on a standalone basis.
#2. Will I benefit from the Web API Service if I’m not developing XAF UI apps?
As mentioned above, our Web API Service can be used outside of XAF-powered UI apps. Numerous developers have successfully used our Web API Service as a backend for their Angular, Vue, React, Blazor WebAssembly, Xamarin, and other .NET/JavaScript UI clients.
For more information in this regard, check out our DevExtreme example on GitHub. This example uses our client-side dxDataGrid with DevExpress.data.ODataStore (just like many other CRUD apps powered by DevExtreme). We’ve also published a video series where we built a .NET MAUI mobile app that consumes our Web API Service.
#3. Do I have to learn a lot of XAF terminology to consume the Web API?
As far as clients or consumers are concerned, our Web API Service is a standard ASP.NET Core OData 8.0 service - use the standard OData v4 query options to consume our API. You can also use Swagger UI, Postman, developer tools within your favorite web browser, or standard .NET/JavaScript API.
#4. Will it take hours to get started?
As I described in a recent blog post, we ship a 1-Click solution to build CRUD REST API for popular usage scenarios - from zero to a running Swagger UI.
To use the free Solution Wizard in Visual Studio 2022, which creates Web API Service, simply run the Universal Component Installer from the Download Manager and enter the credentials for your DevExpress account (free or paid/Universal). Once installed, you can do "File | New Project > Next > Next > Finish > F5" using our project template in your Visual Studio 2022, and that is it.
The Solution Wizard adds all required dependencies, Entity Framework DbContext, default access control rights, connection string, etc. For more information on our Solution Wizard, refer to the following help topic: Create a New Application with the Web API.
#5. Will the free Web API Service expire? I know it’s free now but will it display a “trial” window sometime later?
When you register for a free DevExpress product, you can use your free registered product for as long as your needs dictate. Should an update be made available free-of-charge, you will be notified via email or this website. Updates issued free-of-charge can also be used indefinitely.
#6. Can I customize the API (add custom endpoints, remove data from response, etc)?
You can do everything that you can do with ASP.NET Core OData - Microsoft published lots of information in this regard here: https://learn.microsoft.com/en-us/aspnet/core/web-api/.
To save time for our Web API Service users, we documented highly popular OData customizations on our website:
- Create Custom Endpoints | Expose or Hide Business Object Properties (docs)
- Change an EDM Model Structure using ODataModelBuilder | Customize OData Options (docs)
- Authenticate Users & Authorize CRUD Operations in .NET MAUI Apps with XAF Web API Service & EF Core (video)
- Add Custom Web API Endpoints To Check Permissions & Query Media Data in .NET MAUI Apps with EF Core (video)
As you might imagine, you can customize your own EF Core or XPO data model and fine-tune things at the XAF layer (security permissions, CRUD behavior, etc). NOTE: XAF supports EF Core 5 in v22.1, and EF Core 6+ in v22.2.
#7. Where can I find more technical information and an API reference?
Our Technical FAQ and Online Documentation will answer popular questions about this API. You can also search our extensive support database or watch short overview videos.
If you encounter a bug, please submit a bug report via our online support system: https://www.devexpress.com/ask. For suggestions to our development team, please complete our survey.