Я использую Entity Framework, сначала код 4.0, доступ к существующей устаревшей базе данных для доступа только для чтения. База данных нормализована, поэтому
Table [Event]
[ID]
[Date_Entered]
[Event_Status_Key]
Table [Event_Status]
[Event_Status_Key]
[Event_Status_Description]
Мой класс выглядит как
public class Event
{
public DateTime DateEntered { get; set; }
public string StatusDescription { get; set; }
}
Это приложение уровня сервиса WCF.
Мои два вопроса:
Есть ли простой способ заполнить описание статуса, не создавая второй объект типа словаря? Я видел такие вопросы: Отображение Entity Framework в таблицу поиска , но они, кажется, сфокусированы на объекте, и я действительно просто хочу примитив. Я бы предпочел использовать свободный API, а не атрибуты.
Когда данные загружаются, кэшируются ли какие-либо данные на уровне кода? Или каждая проверка в StatusDescription означает отдельный вызов в таблице [Event_Status]?
Редактировать: Возможный (более субъективный, поэтому я не поднял его) третий вопрос - насколько близко объекты данных должны соответствовать базе данных. Это всегда одно-однозначное поле / таблица? Что я делаю (объединяя две таблицы в один объект данных) плохо?
Спасибо.