Пример #1
0
        public async Task SignIn(string key)
        {
            var authenticationResult = await App.PublicClientApp.AcquireTokenSilentAsync(App.Scopes,
                                                                                         App.PublicClientApp.Users.FirstOrDefault(user => user.DisplayableId == key));

            Token = authenticationResult.AccessToken;
            using (var stream = await GetDataStream("https://graph.microsoft.com/v1.0/me"))
            {
                DeserializedAccount        deserializedAccount = new DeserializedAccount();
                DataContractJsonSerializer ser = new DataContractJsonSerializer(deserializedAccount.GetType());
                deserializedAccount = ser.ReadObject(stream) as DeserializedAccount;
                if (deserializedAccount == null)
                {
                    throw new NullReferenceException("Couldn't deserialized the data");
                }
                Login = deserializedAccount.UserPrincipalName;
                Id    = deserializedAccount.Id;
            }
            using (var stream = await GetDataStream("https://graph.microsoft.com/v1.0/me/drive"))
            {
                DeserializedAccount        deserializedAccount = new DeserializedAccount();
                DataContractJsonSerializer ser = new DataContractJsonSerializer(deserializedAccount.GetType());
                deserializedAccount = ser.ReadObject(stream) as DeserializedAccount;
                if (deserializedAccount == null)
                {
                    throw new NullReferenceException("Couldn't deserialized the data");
                }
                Size           = new SpaceSize();
                Size.TotalSize = deserializedAccount.Quota.Total;
                Size.UsedSize  = deserializedAccount.Quota.Used;
                Size.FreeSize  = deserializedAccount.Quota.Remaining;
            }

            Status = ConnectionStatusEnum.Connected;
        }
Пример #2
0
 public async Task Update()
 {
     using (var stream = await GetDataStream("https://graph.microsoft.com/v1.0/me/drive"))
     {
         DeserializedAccount        deserializedAccount = new DeserializedAccount();
         DataContractJsonSerializer ser = new DataContractJsonSerializer(deserializedAccount.GetType());
         deserializedAccount = ser.ReadObject(stream) as DeserializedAccount;
         if (deserializedAccount == null)
         {
             throw new NullReferenceException("Couldn't deserialized the data");
         }
         Size           = new SpaceSize();
         Size.TotalSize = deserializedAccount.Quota.Total;
         Size.UsedSize  = deserializedAccount.Quota.Used;
         Size.FreeSize  = deserializedAccount.Quota.Remaining;
     }
     Status = ConnectionStatusEnum.Connected;
 }