Solved!
Thanks to this blog post (see point #2): https://digitaltoolfactory.net/blog/2013/10/five-things-should-should-know-about-the-new-asp-net-identity-membership-system/
The new MVC5 membership stuff had automatically created a new local database on my laptop called "DefaultConnection" where it had generated and placed all the membership tables and data. So GetUserId() was returning a GUID that lived locally in the AspNetUsers table from that local database which did not exist in my other main database that the application was using! Gah.
So the fix was changing this line inside of IdentityModels.cs:
public ApplicationDbContext() : base("DefaultConnection") { }
to:
public ApplicationDbContext() : base("MyConnectionString") { }
Now it works and everything is saved centrally into my application's main database.