mirror of
https://github.com/ckaczor/FeedCenter.git
synced 2026-02-16 10:58:31 -05:00
Start modernization
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
using System;
|
||||
using FeedCenter.Data;
|
||||
using FeedCenter.Options;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
@@ -8,33 +10,18 @@ namespace FeedCenter
|
||||
{
|
||||
public static object OpenDataStore()
|
||||
{
|
||||
var entities = new FeedCenterEntities();
|
||||
|
||||
return entities.Database.Exists() ? entities : null;
|
||||
return Database.Entities;
|
||||
}
|
||||
|
||||
public static void CloseDataStore(object dataStore)
|
||||
{
|
||||
var entities = (FeedCenterEntities) dataStore;
|
||||
|
||||
if (entities == null)
|
||||
return;
|
||||
|
||||
entities.SaveChanges();
|
||||
|
||||
entities.Dispose();
|
||||
}
|
||||
|
||||
public static string GetSettingValue(object dataStore, string name, Version version)
|
||||
{
|
||||
var entities = (FeedCenterEntities) dataStore;
|
||||
|
||||
if (entities == null)
|
||||
return null;
|
||||
|
||||
var versionString = version.ToString();
|
||||
|
||||
var setting = entities.Settings.FirstOrDefault(s => s.Name == name && s.Version == versionString);
|
||||
var setting = entities?.Settings.FirstOrDefault(s => s.Name == name);
|
||||
|
||||
return setting?.Value;
|
||||
}
|
||||
@@ -46,51 +33,30 @@ namespace FeedCenter
|
||||
if (entities == null)
|
||||
return;
|
||||
|
||||
var versionString = version.ToString();
|
||||
|
||||
// Try to get the setting from the database that matches the name and version
|
||||
var setting = entities.Settings.FirstOrDefault(s => s.Name == name && s.Version == versionString);
|
||||
var setting = entities.Settings.FirstOrDefault(s => s.Name == name);
|
||||
|
||||
// If there was no setting we need to create it
|
||||
if (setting == null)
|
||||
entities.SaveChanges(() =>
|
||||
{
|
||||
// Create the new setting
|
||||
setting = new Setting { Name = name, Version = version.ToString() };
|
||||
// If there was no setting we need to create it
|
||||
if (setting == null)
|
||||
{
|
||||
// Create the new setting
|
||||
setting = new Setting { Name = name };
|
||||
|
||||
// Add the setting to the database
|
||||
entities.Settings.Add(setting);
|
||||
}
|
||||
// Add the setting to the database
|
||||
entities.Settings.Add(setting);
|
||||
}
|
||||
|
||||
// Set the value into the setting
|
||||
setting.Value = value;
|
||||
// Set the value into the setting
|
||||
setting.Value = value;
|
||||
});
|
||||
}
|
||||
|
||||
public static List<Version> GetVersionList(object dataStore)
|
||||
{
|
||||
var entities = (FeedCenterEntities) dataStore;
|
||||
|
||||
// Get a distinct list of version strings
|
||||
var versions = entities?.Settings.Select(s => s.Version).Distinct().ToList();
|
||||
|
||||
// Create a version object for each string and return the list
|
||||
return versions?.Select(s => new Version(s)).ToList();
|
||||
}
|
||||
public static List<Version> GetVersionList(object dataStore) => null;
|
||||
|
||||
public static void DeleteSettingsForVersion(object dataStore, Version version)
|
||||
{
|
||||
var entities = (FeedCenterEntities) dataStore;
|
||||
|
||||
if (entities == null)
|
||||
return;
|
||||
|
||||
var versionString = version.ToString();
|
||||
|
||||
// Get all the settings for the current version number
|
||||
var settings = entities.Settings.Where(setting => setting.Version == versionString);
|
||||
|
||||
// Delete each setting
|
||||
foreach (var setting in settings)
|
||||
entities.Settings.Remove(setting);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user