示例#1
0
 public async Task UpdateAuthStorageAsync(string id,
                                          string acessToken,
                                          string refreshToken)
 {
     var filter = new BsonDocument("_id", id);
     await AuthStorages.UpdateOneAsync(filter, Builders <AuthStorage> .Update.Set(x => x.AcessToken, acessToken)
                                       .Set(x => x.RefreshToken, refreshToken));
 }
示例#2
0
        public async Task <AuthStorage> GetAuthStorageAsync(string id)
        {
            var filter  = new BsonDocument("_id", id);
            var session = await AuthStorages.Find(filter)
                          .FirstOrDefaultAsync();

            return(session);
        }
示例#3
0
        public async Task СreateOrUpdateAuthStorageAsync(string id, string acessToken, string refresh)
        {
            var authStorage = new AuthStorage()
            {
                UserId       = id,
                AcessToken   = acessToken,
                RefreshToken = refresh
            };

            var filter = new BsonDocument("_id", id);

            var user = await AuthStorages.Find(filter)
                       .FirstOrDefaultAsync();

            if (user != null)
            {
                await UpdateAuthStorageAsync(id, acessToken, refresh);

                return;
            }

            await AuthStorages.InsertOneAsync(authStorage);
        }