/// <summary>
        ///
        /// </summary>
        /// <param name="isAdding">true if adding, otherwise, replace all.</param>
        /// <param name="reloadFromServer">whether must sync and reload from server or not</param>
        /// <returns></returns>
        internal async Task ResfreshDataStorageAsync(bool isAdding, bool reloadFromServer = false)
        {
            var dataStoreSyncResult = await dataStore.GetItemsAsync <Transaction>(reloadFromServer, includeNavigationProperties : true);

            if (dataStoreSyncResult.Code == Models.DataStoreSyncCode.Success)
            {
                if (!isAdding)
                {
                    MyDebtsNegativeTransactions.ReplaceRange(dataStoreSyncResult.Items.Where(p => p.Type == TransactionType.NegativeBalance));
                    OtherDebtsPositiveTransactions.ReplaceRange(dataStoreSyncResult.Items.Where(p => p.Type == TransactionType.PositiveBalance));
                }
                else
                {
                    MyDebtsNegativeTransactions.AddRange(dataStoreSyncResult.Items.Where(p => p.Type == TransactionType.NegativeBalance));
                    OtherDebtsPositiveTransactions.AddRange(dataStoreSyncResult.Items.Where(p => p.Type == TransactionType.PositiveBalance));
                }
            }
        }