* cleanup scanner project * cleanup infrastructure projects * cleanup ffmpeg project * cleanup core project * cleanup app project * cleanup main project * update dependencies * code cleanup
15 lines
488 B
C#
15 lines
488 B
C#
using System.Globalization;
|
|
using ErsatzTV.Core.Domain;
|
|
|
|
namespace ErsatzTV.Infrastructure.Extensions;
|
|
|
|
public static class ConfigElementQueryableExtensions
|
|
{
|
|
public static Task<Option<T>> GetValue<T>(
|
|
this IQueryable<ConfigElement> configElements,
|
|
ConfigElementKey key) =>
|
|
configElements
|
|
.SelectOneAsync(ce => ce.Key, ce => ce.Key == key.Key)
|
|
.MapT(ce => (T)Convert.ChangeType(ce.Value, typeof(T), CultureInfo.InvariantCulture));
|
|
}
|