Better format
This commit is contained in:
parent
26a28afe78
commit
e32a942fde
@ -85,19 +85,20 @@ public class AppSettings
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string? GetJson(AppSettings? appSettings)
|
private static Models.AppSettings Get(AppSettings? appSettings)
|
||||||
{
|
{
|
||||||
string? result;
|
Models.AppSettings? results;
|
||||||
|
string? json;
|
||||||
if (appSettings is null || appSettings.ConfigurationFileName is null)
|
if (appSettings is null || appSettings.ConfigurationFileName is null)
|
||||||
result = null;
|
json = null;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
string jsonFile = Path.Combine(AppContext.BaseDirectory, appSettings.ConfigurationFileName);
|
string jsonFile = Path.Combine(AppContext.BaseDirectory, appSettings.ConfigurationFileName);
|
||||||
if (File.Exists(jsonFile))
|
if (File.Exists(jsonFile))
|
||||||
result = File.ReadAllText(jsonFile);
|
json = File.ReadAllText(jsonFile);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
result = null;
|
json = null;
|
||||||
string applicationData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
|
string applicationData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
|
||||||
List<string> collection = [applicationData];
|
List<string> collection = [applicationData];
|
||||||
if (appSettings?.ConfigurationDirectoryNames is not null)
|
if (appSettings?.ConfigurationDirectoryNames is not null)
|
||||||
@ -106,10 +107,24 @@ public class AppSettings
|
|||||||
collection.Add(appSettings.ConfigurationFileName);
|
collection.Add(appSettings.ConfigurationFileName);
|
||||||
jsonFile = Path.Combine(collection.ToArray());
|
jsonFile = Path.Combine(collection.ToArray());
|
||||||
}
|
}
|
||||||
if (string.IsNullOrEmpty(result) && File.Exists(jsonFile))
|
if (string.IsNullOrEmpty(json) && File.Exists(jsonFile))
|
||||||
result = File.ReadAllText(jsonFile);
|
json = File.ReadAllText(jsonFile);
|
||||||
}
|
}
|
||||||
return result;
|
results = (string.IsNullOrEmpty(json) ? null : results = JsonSerializer.Deserialize(json, AppSettingsSourceGenerationContext.Default.AppSettings)) ??
|
||||||
|
throw new NullReferenceException(nameof(Models.AppSettings));
|
||||||
|
results = Get(appSettings,
|
||||||
|
results.DriveConfiguration,
|
||||||
|
results.CompassConfiguration,
|
||||||
|
results.EAFLogConfiguration,
|
||||||
|
results.EAFProgramDataConfiguration,
|
||||||
|
results.EDADatabaseConfiguration,
|
||||||
|
results.NugetConfiguration,
|
||||||
|
results.MetrologyConfiguration,
|
||||||
|
results.SerialConfiguration,
|
||||||
|
results.StratusConfiguration,
|
||||||
|
results.TransmissionControlProtocolConfiguration,
|
||||||
|
results.WaferCounterConfiguration);
|
||||||
|
return results;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Models.AppSettings Get(IConfigurationRoot configurationRoot)
|
public static Models.AppSettings Get(IConfigurationRoot configurationRoot)
|
||||||
@ -119,21 +134,7 @@ public class AppSettings
|
|||||||
AppSettings? appSettings = configurationRoot.Get<AppSettings>();
|
AppSettings? appSettings = configurationRoot.Get<AppSettings>();
|
||||||
#pragma warning restore IL3050, IL2026
|
#pragma warning restore IL3050, IL2026
|
||||||
PreVerify(configurationRoot, appSettings);
|
PreVerify(configurationRoot, appSettings);
|
||||||
string? json = GetJson(appSettings);
|
result = Get(appSettings);
|
||||||
Models.AppSettings? modelsAppSettings = (string.IsNullOrEmpty(json) ? null : modelsAppSettings = JsonSerializer.Deserialize(json, AppSettingsSourceGenerationContext.Default.AppSettings)) ??
|
|
||||||
throw new NullReferenceException(nameof(Models.AppSettings));
|
|
||||||
result = Get(appSettings,
|
|
||||||
modelsAppSettings.DriveConfiguration,
|
|
||||||
modelsAppSettings.CompassConfiguration,
|
|
||||||
modelsAppSettings.EAFLogConfiguration,
|
|
||||||
modelsAppSettings.EAFProgramDataConfiguration,
|
|
||||||
modelsAppSettings.EDADatabaseConfiguration,
|
|
||||||
modelsAppSettings.NugetConfiguration,
|
|
||||||
modelsAppSettings.MetrologyConfiguration,
|
|
||||||
modelsAppSettings.SerialConfiguration,
|
|
||||||
modelsAppSettings.StratusConfiguration,
|
|
||||||
modelsAppSettings.TransmissionControlProtocolConfiguration,
|
|
||||||
modelsAppSettings.WaferCounterConfiguration);
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user