Dev Camp 2022: Day 4

Tim Palmer

Day 4 

Welcome to day 4 of our OCC 2022 Dev Camp blog.  We spent time today finessing the implementation work we have already completed.

Security 

Our Blazor implementation works by calling a WebAPI when it wants to interact with the database. Today we set up a security service for both our website and our WebAPI using OCC’s Identity Provider Service, which is used in our local government products.  

Using the know-how created by last summer’s interns, we also integrated this with our Microsoft Azure identities, so that an OCC member of staff can log into the system using their company Microsoft account. 

Finally, we considered permissions for pages of the application when working offline. While the server-side will ultimately enforce permissions, client-side permission rules allow us to prevent a user from doing something that the server will later reject. Blazor facilitates this functionality, and we were able to set it up quickly using Microsoft documentation

Exploring Entity Framework on MAUI (Xamarin) 

One of our team members was still keen to run further testing in MAUI so we decided we would undertake one final task and trial the Entity Framework Core with MAUI. This functionality was added to Xamarin recently, so we’re really testing Xamarin. The good news is that it works, and we would recommend it. The only bit that caught us out was that you need to ensure that you are using the local storage on the mobile device that you’ve been given permission to use. 

Despite further problems with the MAUI layout engine, we managed to build an app by the end of the day, even if it didn’t look as good as hoped. 

End of day 4 

Another achievement was that we were able to easily implement the filter functionality in C# on Blazor Web. This was of course then easily imported into the Blazor Desktop project. 

Come back tomorrow to find out how day 5 unfolds and what our conclusions are.