forked from ddrilling/AsbCloudServer
System.Configuration для проброса ConfigurationErrorsException
This commit is contained in:
parent
c8c504b3be
commit
f0b46f9eca
@ -62,6 +62,7 @@
|
|||||||
<PackageReference Include="Microsoft.AspNetCore.Http.Extensions" Version="2.1.21" />
|
<PackageReference Include="Microsoft.AspNetCore.Http.Extensions" Version="2.1.21" />
|
||||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
|
||||||
<PackageReference Include="Microsoft.IdentityModel.Tokens" Version="7.2.0" />
|
<PackageReference Include="Microsoft.IdentityModel.Tokens" Version="7.2.0" />
|
||||||
|
<PackageReference Include="System.Configuration.ConfigurationManager" Version="8.0.0" />
|
||||||
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="7.2.0" />
|
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="7.2.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
@ -46,10 +46,7 @@ namespace AsbCloudInfrastructure
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static Task<IEnumerable<T>> GetOrCreateBasicAsync<T>(this IMemoryCache memoryCache, Func<CancellationToken, Task<IEnumerable<T>>> getterAsync, CancellationToken token)
|
public static Task<IEnumerable<T>> GetOrCreateBasicAsync<T>(this IMemoryCache memoryCache, Func<CancellationToken, Task<IEnumerable<T>>> getterAsync, CancellationToken token)
|
||||||
{
|
{
|
||||||
var key = typeof(T).FullName;
|
var key = typeof(T).FullName!;
|
||||||
if (key == null)
|
|
||||||
return Task.FromResult(Enumerable.Empty<T>());
|
|
||||||
|
|
||||||
var cache = memoryCache.GetOrCreateAsync(key, async (cacheEntry) =>
|
var cache = memoryCache.GetOrCreateAsync(key, async (cacheEntry) =>
|
||||||
{
|
{
|
||||||
cacheEntry.AbsoluteExpirationRelativeToNow = CacheOlescence;
|
cacheEntry.AbsoluteExpirationRelativeToNow = CacheOlescence;
|
||||||
@ -87,7 +84,7 @@ namespace AsbCloudInfrastructure
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static IEnumerable<T> GetOrCreateBasic<T>(this IMemoryCache memoryCache, Func<IEnumerable<T>> getter)
|
public static IEnumerable<T> GetOrCreateBasic<T>(this IMemoryCache memoryCache, Func<IEnumerable<T>> getter)
|
||||||
{
|
{
|
||||||
var key = typeof(T).FullName;
|
var key = typeof(T).FullName!;
|
||||||
var cache = memoryCache.GetOrCreate(key, cacheEntry =>
|
var cache = memoryCache.GetOrCreate(key, cacheEntry =>
|
||||||
{
|
{
|
||||||
cacheEntry.AbsoluteExpirationRelativeToNow = CacheOlescence;
|
cacheEntry.AbsoluteExpirationRelativeToNow = CacheOlescence;
|
||||||
@ -106,10 +103,7 @@ namespace AsbCloudInfrastructure
|
|||||||
public static void DropBasic<T>(this IMemoryCache memoryCache)
|
public static void DropBasic<T>(this IMemoryCache memoryCache)
|
||||||
where T : class
|
where T : class
|
||||||
{
|
{
|
||||||
var key = typeof(T).FullName;
|
var key = typeof(T).FullName!;
|
||||||
|
|
||||||
if (key == null)
|
|
||||||
return;
|
|
||||||
|
|
||||||
memoryCache.Remove(key);
|
memoryCache.Remove(key);
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
using AsbCloudApp.Exceptions;
|
using AsbCloudApp.Exceptions;
|
||||||
using Microsoft.Extensions.Configuration;
|
using Microsoft.Extensions.Configuration;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Configuration;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
|
||||||
namespace AsbCloudInfrastructure.Services.Email
|
namespace AsbCloudInfrastructure.Services.Email
|
||||||
@ -9,17 +10,24 @@ namespace AsbCloudInfrastructure.Services.Email
|
|||||||
|
|
||||||
public class BaseFactory
|
public class BaseFactory
|
||||||
{
|
{
|
||||||
private readonly string platformName;
|
protected readonly string platformName;
|
||||||
private readonly string platformUrl;
|
protected readonly string platformUrl;
|
||||||
private readonly string companyName;
|
protected readonly string companyName;
|
||||||
private readonly string supportMail;
|
protected readonly string supportMail;
|
||||||
|
|
||||||
public BaseFactory(IConfiguration configuration)
|
public BaseFactory(IConfiguration configuration)
|
||||||
{
|
{
|
||||||
platformName = configuration.GetValue("email:platformName", "Цифровое бурение") ?? string.Empty;
|
platformName = configuration.GetValue<string>("email:platformName")
|
||||||
platformUrl = configuration.GetValue("email:platformUrl", "https://cloud.digitaldrilling.ru/") ?? string.Empty;
|
?? throw new ConfigurationErrorsException("email:platformName не определен");
|
||||||
companyName = configuration.GetValue("email:companyName", "ООО \"Цифровое бурение\"") ?? string.Empty;
|
|
||||||
supportMail = configuration.GetValue("email:supportMail", "support@digitaldrilling.ru") ?? string.Empty;
|
platformUrl = configuration.GetValue<string>("email:platformUrl")
|
||||||
|
?? throw new ConfigurationErrorsException("email:platformUrl не определен");
|
||||||
|
|
||||||
|
companyName = configuration.GetValue<string>("email:companyName")
|
||||||
|
?? throw new ConfigurationErrorsException("email:companyName не определен");
|
||||||
|
|
||||||
|
supportMail = configuration.GetValue<string>("email:supportMail")
|
||||||
|
?? throw new ConfigurationErrorsException("email:supportMail не определен");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static string GetOrEmptyImageBase64(string resourceFileName)
|
public static string GetOrEmptyImageBase64(string resourceFileName)
|
||||||
|
@ -6,14 +6,10 @@ namespace AsbCloudInfrastructure.Services.Email
|
|||||||
|
|
||||||
class DrillingMailBodyFactory : BaseFactory
|
class DrillingMailBodyFactory : BaseFactory
|
||||||
{
|
{
|
||||||
private readonly string platformName;
|
|
||||||
private readonly string platformUrl;
|
|
||||||
|
|
||||||
public DrillingMailBodyFactory(IConfiguration configuration)
|
public DrillingMailBodyFactory(IConfiguration configuration)
|
||||||
: base(configuration)
|
: base(configuration)
|
||||||
{
|
{
|
||||||
platformName = configuration.GetValue("email:platformName", "Цифровое бурение") ?? string.Empty;
|
|
||||||
platformUrl = configuration.GetValue("email:platformUrl", "https://cloud.digitaldrilling.ru/") ?? string.Empty;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override string MakeSubject(WellDto well, string action)
|
public override string MakeSubject(WellDto well, string action)
|
||||||
|
@ -4,6 +4,7 @@ using AsbCloudApp.Repositories;
|
|||||||
using AsbCloudApp.Services.Notifications;
|
using AsbCloudApp.Services.Notifications;
|
||||||
using Microsoft.Extensions.Configuration;
|
using Microsoft.Extensions.Configuration;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Configuration;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Net.Mail;
|
using System.Net.Mail;
|
||||||
@ -29,9 +30,14 @@ namespace AsbCloudInfrastructure.Services.Email
|
|||||||
{
|
{
|
||||||
this.userRepository = userRepository;
|
this.userRepository = userRepository;
|
||||||
|
|
||||||
this.sender = configuration.GetValue("email:sender", string.Empty) ?? string.Empty;
|
this.sender = configuration.GetValue<string>("email:sender")
|
||||||
this.smtpPassword = configuration.GetValue("email:password", string.Empty) ?? string.Empty;
|
?? throw new ConfigurationErrorsException("email:sender не определен");
|
||||||
this.smtpServer = configuration.GetValue("email:smtpServer", string.Empty) ?? string.Empty;
|
|
||||||
|
this.smtpPassword = configuration.GetValue<string>("email:password")
|
||||||
|
?? throw new ConfigurationErrorsException("email:password не определен");
|
||||||
|
|
||||||
|
this.smtpServer = configuration.GetValue<string>("email:smtpServer")
|
||||||
|
?? throw new ConfigurationErrorsException("email:smtpServer не определен");
|
||||||
|
|
||||||
var configError = string.IsNullOrEmpty(this.sender) ||
|
var configError = string.IsNullOrEmpty(this.sender) ||
|
||||||
string.IsNullOrEmpty(this.smtpPassword) ||
|
string.IsNullOrEmpty(this.smtpPassword) ||
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
using AsbCloudApp.Data;
|
using AsbCloudApp.Data;
|
||||||
using AsbCloudApp.Repositories;
|
using AsbCloudApp.Repositories;
|
||||||
using AsbCloudApp.Services;
|
using AsbCloudApp.Services;
|
||||||
|
using Microsoft.Extensions.Configuration;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Microsoft.Extensions.Configuration;
|
|
||||||
|
|
||||||
namespace AsbCloudInfrastructure.Services;
|
namespace AsbCloudInfrastructure.Services;
|
||||||
|
|
||||||
@ -30,10 +30,7 @@ public class HelpPageService : IHelpPageService
|
|||||||
{
|
{
|
||||||
this.helpPageRepository = helpPageRepository;
|
this.helpPageRepository = helpPageRepository;
|
||||||
this.fileStorageRepository = fileStorageRepository;
|
this.fileStorageRepository = fileStorageRepository;
|
||||||
directoryNameHelpPageFiles = configuration.GetValue<string>("DirectoryNameHelpPageFiles") ?? string.Empty;
|
directoryNameHelpPageFiles = configuration.GetValue("DirectoryNameHelpPageFiles", "helpPages")!;
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(directoryNameHelpPageFiles))
|
|
||||||
directoryNameHelpPageFiles = "helpPages";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -35,10 +35,7 @@ public class ManualCatalogService : IManualCatalogService
|
|||||||
this.fileStorageRepository = fileStorageRepository;
|
this.fileStorageRepository = fileStorageRepository;
|
||||||
this.manualDirectoryRepository = manualDirectoryRepository;
|
this.manualDirectoryRepository = manualDirectoryRepository;
|
||||||
this.manualRepository = manualRepository;
|
this.manualRepository = manualRepository;
|
||||||
directoryFiles = configuration.GetValue<string>("DirectoryManualFiles") ?? string.Empty;
|
directoryFiles = configuration.GetValue<string>("DirectoryManualFiles", "manuals")!;
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(directoryFiles))
|
|
||||||
directoryFiles = "manuals";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<int> SaveFileAsync(int idDirectory, int idAuthor, string name, Stream stream, CancellationToken cancellationToken)
|
public async Task<int> SaveFileAsync(int idDirectory, int idAuthor, string name, Stream stream, CancellationToken cancellationToken)
|
||||||
|
@ -6,6 +6,7 @@ using Microsoft.EntityFrameworkCore;
|
|||||||
using Microsoft.Extensions.Configuration;
|
using Microsoft.Extensions.Configuration;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Configuration;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
@ -36,7 +37,8 @@ namespace AsbCloudInfrastructure.Services
|
|||||||
|
|
||||||
private ReduceSamplingService(IConfiguration configuration)
|
private ReduceSamplingService(IConfiguration configuration)
|
||||||
{
|
{
|
||||||
connectionString = configuration.GetConnectionString("DefaultConnection") ?? string.Empty;
|
connectionString = configuration.GetConnectionString("DefaultConnection")
|
||||||
|
?? throw new ConfigurationErrorsException("DefaultConnection не определен");
|
||||||
}
|
}
|
||||||
|
|
||||||
~ReduceSamplingService()
|
~ReduceSamplingService()
|
||||||
|
Loading…
Reference in New Issue
Block a user