If you have used DevExtreme Project Templates to create mobile apps you know how fast and easy you can get a simple solution working. With just passing the Url of your OData service on the wizard all the views for your entities are generated in a master- detail way. This is a great solution when you need to give access to some data to your users without having to create views, models, bindings, etc. It is all created for you, it is quick and more important, it works. But as a C# developer that is the end of my road. If I have to do any customization at all I then move to Xamarin where I feel more at home.
I was reading an article last week about Xamarin.Forms DataPages and my first thought was: Will it work with DevExpress Odata Service? Spoiler: Yes, It does.
“Faith is taking the first step even when you don’t see the whole staircase.” – Martin Luther King
When I first started with XPO I could swear there was something magic involved in how it was handling my data. I had no idea what was going on, but I knew that if I derived my classes from XPObject or BaseObject (if you use XAF), I automatically had my classes turned into tables in a database of my choosing, I had an autogenerated Built-in OID key, Deferred Object Deletion, and Optimistic Locking. And honestly, that was all I care about. If I wanted to use a different database; it was as simple as changing my connection string.
A quick overview of XPO in Xamarin.
With the current release of XPO v18.1, DevExpress has made XPO available free-of-charge. Xamarin has been open source and free for quite some time, and now with XPO for .NET Core / .NET Standard 2.0 finally out of Beta, a world of possibilities and new exciting features/projects is opening to us.
Let’s review what exactly that means to us.
If you have used XPO in the past you know the great features it offers:
- Transparent and Controllable Object Relational Mapping System
- Bindable and Pageable Object Collections
- Support for various DB engines (14 to be exact and you can always implement your own XPO connection provider)
- Advanced Criteria System
- And More…
Also, it is a mature product with great support that has been around for 15 years. Support is still a paid service but definitely worth it (ask around). Want to see how it compares to EF? Just take a quick look at this simple benchmark.