StreetFoo.Client.StreetFooRuntime.GetUserDatabase C# (CSharp) Method

GetUserDatabase() static private method

static private GetUserDatabase ( ) : SQLite.SQLiteAsyncConnection
return SQLite.SQLiteAsyncConnection
        internal static SQLiteAsyncConnection GetUserDatabase()
        {
            return new SQLiteAsyncConnection(UserDatabaseConnectionString);
        }
    }

Usage Example

        // updates the local cache of the reports...
        public static async Task UpdateCacheFromServerAsync()
        {
            IEnumerable <ReportItem> reports = await GetSpooledReportsAsync();

            if (reports == null)
            {
                // create a service proxy to call up to the server...
                var proxy  = TinyIoCContainer.Current.Resolve <IGetReportsByUserServiceProxy>();
                var result = await proxy.GetReportsByUserAsync();

                // did it actually work?
                result.AssertNoErrors();

                // set...
                reports = result.Reports;
            }

            // update...
            var conn = StreetFooRuntime.GetUserDatabase();

            foreach (var report in reports)
            {
                // load the existing one, deleting it if we find it...
                var existing = await conn.Table <ReportItem>().Where(v => v.NativeId == report.NativeId).FirstOrDefaultAsync();

                if (existing != null)
                {
                    await conn.DeleteAsync(existing);
                }

                // create...
                await conn.InsertAsync(report);
            }
        }
All Usage Examples Of StreetFoo.Client.StreetFooRuntime::GetUserDatabase