Как выдавать данные в зависимости от локали пользователя

У меня в бд хранится текст сообщения на двух языках: messageRu и messageKz.Как мне грамотно вытягивать нужную из них в зависимости от выбранного языка пользователя? Я использую IStringLocalizer и вот мой middleWare:

public class CultureProvider : RequestCultureProvider {
        public override Task<ProviderCultureResult> DetermineProviderCultureResult(HttpContext httpContext) {
            if (httpContext == null)
                throw new ArgumentNullException(nameof(httpContext));

            string locale = httpContext.Request.Headers.FirstOrDefault(x => x.Key == "Locale").Value.FirstOrDefault();
            if (string.IsNullOrEmpty(locale)) {
                return Task.FromResult((ProviderCultureResult)null);
            }
            var requestCulture = new ProviderCultureResult(locale);
            return Task.FromResult(requestCulture);
        }
    }

в Startap.cs :

var cultureRu = new CultureInfo("ru-RU");
            var cultureKz = new CultureInfo("ru-KZ");
            var localizationOptions = new RequestLocalizationOptions {
                SupportedCultures = new List<CultureInfo> { cultureRu, cultureKz },
                SupportedUICultures = new List<CultureInfo> { cultureRu, cultureKz },
                DefaultRequestCulture = new RequestCulture(cultureRu.Name)
            };
            localizationOptions.AddInitialRequestCultureProvider(new CultureProvider());
            app.UseRequestLocalization(localizationOptions);

Как тут сделать грамотный запрос, в зависимости от языка?:

var notifications = db.Select(x => new NotificationResponse {
                State = x.State,
                Message = x.Notification.MessageRu,
                Created = x.Notification.Created,
                Id = x.Id
            }).OrderByDescending(x => x.Created);

Ответы (0 шт):