Esempio n. 1
0
        /// <summary>
        /// Saves data to storage.
        /// All exceptions are bubbled up.
        /// </summary>
        public async static Task <bool> SaveAsync <T>(string _connectionString,
                                                      StorageConfig storageConfig,
                                                      Dictionary <string, object> keys,
                                                      T dataObject) where T : class
        {
            {
                using (var sqlServerClient = new SQLServerClient(_connectionString, storageConfig))
                {
                    var readData = await GetAsync <T>(_connectionString, storageConfig, keys);

                    if (readData != null)
                    {
                        Copy(dataObject, readData);
                        sqlServerClient.Update <T>(readData);
                    }
                    else
                    {
                        sqlServerClient.Add <T>(dataObject);
                    }

                    await sqlServerClient.SaveChangesAsync();
                }
            }

            return(true);
        }
Esempio n. 2
0
        /// <summary>
        /// Delete data from storage
        /// </summary>
        public static async Task <bool> DeleteAsync <T>(string _connectionString,
                                                        StorageConfig storageConfig,
                                                        Dictionary <string, object> keys) where T : class
        {
            {
                using (var sqlServerClient = new SQLServerClient(_connectionString, storageConfig))
                {
                    var readData = await GetAsync <T>(_connectionString, storageConfig, keys);

                    if (readData != null)
                    {
                        sqlServerClient.Remove <T>(readData);
                        await sqlServerClient.SaveChangesAsync();
                    }
                }
            }

            return(true);
        }