RadZen Blazor Swagger API

I'm evaluating RadZen for my company, and as great as it looks from the promo material, it's just not living up to expectations.

I'm trying to create a Blazor app (either server-side or wasm) which will connect to an existing REST API that uses Swagger. However, using the RadZen designer tool does not seem to actually generate any CRUD pages. This was going to be our basic criteria for success for this tool, as thus far it has failed.

I have successfully created the Data source from the Swagger json file, which did import the schema, which was fantastic. I also check the primary keys where applicable. However, there was no "create pages from schema" option as there is when connecting to a direct Database source.

I then tried to create a single CRUD page. This seemed promising at first, and I was able to enter the REST services for Get enitties, Get singular entities, Delete entity, and Add entity. Nothing showed up for the Update entities, although do have Update APIs for all models (they are PUT requests). At any rate, skipping Update, but with all the others ones entered, I clicked Save and nothing happened. No error, but also no pages were created. Nothing.

I tried this for both Blazor wasm, and Blazor server-side. Neither worked. Very disappointing.

I also tried to create a simplified DataSource by just selecting a few schema objects. However, even if I just selected one or two, all of them were imported.

There is also no obvious way to tell it use a JWT bearer token. The API service does use a JWT bearer token, and I suppose the failure might be due to this. But there was no way to enter a JWT bearer token, so that in itself is a flaw.

There just seems to be way too many problems with this product. Unless I am doing something utterly wrong (which is why I am asking at this point), we will probably have to pass on this product.

We use the product to develop solutions with Blazor components, letting Visual Studio guide the integration flow with API, CRUD, etc. We are very satisfied with the quality of the product and the prompt service of the Radzen team.

Rogério Mauri

Hi @mchase,

Sorry to hear that CRUD pages are not working for you - unlike OData pure REST and Swagger services are not standardized and Radzen will unable to find create, update and delete methods in some cases. For example for create method we are looking for POST with single object parameter on the same resource as the method for getting collection of objects. For update we are looking for PATCH with two parameters: key and object and for delete we are looking for DELETE with key as parameter. For REST and Swagger services we've made recently an wizard where you can specify these methods:

We will add error in the next version if we cannot create CRUD pages.

To specify the token you can use API key header:

or you can use the service partial methods.

Yes, I used the wizard where you specify the methods. The only one that did not show up a method was for Update. We use PUT not PATCH for update. PUT is the standard method for updates, not PATCH. PATCH is only for applying partial updates. If you are only looking for PATCH methods, then you should look for PUT as well.

Regardless, I set the methods for Get Entities, Get single entity, delete, and add, but none of them generated.

Also, user security is via JWT token, not API Key, but the schema is readable regardless. There do not appear to be any provisions for that.

We will allow PUT for update operation in the next release (before the end of the week) however if the number of parameters and parameters types are not what is expected from the template no pages will be created (in the new version error will be shown). The template will unable to cover all possible scenarios and in such case you can use Radzen powerful designer to create the pages you need.

This also does not work for the Angular client, so it's not just an issue with creating the Blazor pages from a REST API

Radzen templates are almost identical for both Angular and Blazor