-
Using Google APIs and Auth in Xamarin Forms
I’m working on porting Net Writer from UWP to Android using Xamarin Forms. The Google authentication is a little bit tricky as it is constantly changing. Working off this amazing blog post by Timothé Larivière got me 90% of the way there but there are some updates to the process in 2020. Pre-requisites to register…
-
UWP and Xamarin Forms – How to display your app’s version number
Assume we want to automatically show the version number of your app in your UI, for example, the settings page or elsewhere. Your version number will normally be updated by your CI/CD system (updating Package.appxmanifest for UWP and AndroidManifest.xml for an Android Xamarin app). Create a property to bind to ViewModels and how they bind…
-
Adding an Admin Panel to a .NET Core web app with CoreAdmin
I’ve published version 1.0.0 of a new open source package and a corresponding nuget package – CoreAdmin. CoreAdmin adds a nice set of CRUD screens to your .NET Core web app in one line of code! Adding CoreAdmin to your app Given a typical Startup.cs file, you will have a ConfigureServices method. You need to…
-
EF Core Migrations – creating Indexes Online depending on SQL Server edition
I recently hit the classic case of trying to add Indexes to a large table. Whilst Entity Framework Core supports creating Indexes online during migrations, not all versions of SQL Server support this. In the case that your migration contains the code: migrationBuilder.CreateIndex( name: “IX_TableName_ColumnName”, table: “TableName”, column: “ColumnName”).Annotation(“SqlServer:Online”, true); This will fail hard on…
-
Missing StoreKey PFX certificates when building a Visual Studio 2019 UWP project
I came across an interesting issue updating my UWP app to Visual Studio 2019 and a new Azure DevOps pipeline. “Associate with Store” no longer adds password-less PFX files named *TemporaryKey.pfx and *StoreKey.pfx to your project to sign your store submissions – instead in VS2019 it now adds the certificates to your local user store…