У меня возникла проблема с настройкой моей собственной базы данных и относительной кодировкой приложения с Entity Framework, которые управляют языками.Как я могу управлять языками?
Обычно в моем старом проекте у меня есть таблица, скажем Страницы, которая содержит уникальную строку, которые идентифицируют одну страницу, с помощью стандартных информаций (которые не нуждаются в переводе на все):
ID
Author
Date
Location
Прикрепленные к этому у меня есть поддержка таблица Pages_L (1-N), который содержит языки данных, поэтому конкретную информацию переведена для каждой страницы-строки:
ID
ID_PAGE
LANGUAGE
Title
Description
Notes
Ну, стенд ard для базы данных! Нет избыточности данных.
проблема теперь стала в Entity рамочные, потому что для конкретной страницы, которую я хочу извлечь, мне нужно каждый раз, чтобы сделать выбор:
1 - first the page (a `.Where`);
2 - than select the language (another `.Where`)
3 - finally, select the field I want (let say, `Title`)
Я нахожу это раздражает процесс, потому что, когда я делаю запрос мне нужно извлечь данные только фиксированного языка. Я имею в виду: когда мое приложение обрабатывает, язык ВСЕГДА один. Я не извлекаю некоторые из них на английском языке, некоторые на итальянском, некоторые во франках и т. Д.
Итак, что бы я хотел достичь, это своего рода «начальная точка языка» для всего контекста. На более поздней стадии так, мне просто нужно сделать:
Pages.Where(p=>p.ID==myID).FirstOrDefault().Title
без прохождения trought Pages_L таблицы каждый раз.
Вопрос в следующем: могу ли я сделать это каким-то образом с Entity Framework? Я могу изменить все в своем проекте, поэтому все предложения были бы хороши! (от БД, к структуре сущности, к другим стратегиям поставки).
Но данные, которые я хочу показать, хранятся в базе данных, поэтому я каким-то образом их извлекаю ... – markzzz