Identity with Dapper.
My user in my Identity is of type IUser< int >
When a user Registers, I create a user in my AccountController:
Register POST:
if (ModelState.IsValid)
{
    user = new MySiteUserRecord
    {
        UserName = model.UserName,
        AccessFailedCount = 0,
        ApplicationName = "Portal",
        Description = string.Empty,
        PhoneNumber = model.PhoneNumber ?? string.Empty,
        Email = model.Email
    };
    var result = await UserManager.CreateAsync(user, model.Password);
    if (result.Succeeded)
    {
       ...
If successful, I need to get the newly created user record, because the 'new' user class, present above, didn't know what it's Id is yet...
       user = await UserManager.FindByNameAsync(model.UserName);
When I look at this found user record, the user.Id = 0. But if I look at the DB, the row for this newly created user is the next Id, for example, 9 Even if I do a direct Db query, rather than use the UserManager's FindByNameAsync function, the Id returned is always 0.
I'm really stumped - I've probably missed something...
What do I need to do to get the user record with the assigned DB Id?
EDIT: My Find User function is:
    Task<MySiteUserRecord> IUserStore<MySiteUserRecord, int>.FindByNameAsync(string userName)
    {
        var predicate = Predicates.Field<MySiteUserRecord>(f => f.UserName, Operator.Eq, userName);
        return Task.Factory.StartNew(() => _sqlConn.GetList<MySiteUserRecord>(predicate).FirstOrDefault());
    }
