Является ли это способом использования кода структуры Entity Framework. Только для того, чтобы иметь сущность, которая имеет поля из двух таблиц, если обе таблицы не содержат первичный ключ?Разделение сущностей только с кодом
Вот пример.
public class BlogPost
{
public int PostID { get; set; }
public String PostBody { get; set; }
public int UserID { get; set; }
public string Username { get; set; }
}
public class User
{
public int UserID { get; set; }
public String Username { get; set; }
}
public class BlogPostConfiguration : EntityConfiguration<BlogPost>
{
public BlogPostConfiguration()
{
HasKey(b => b.PostID);
}
}
public class UserConfiguration : EntityConfiguration<User>
{
public UserConfiguration()
{
HasKey(b => b.UserID);
}
}
Я хочу Имя пользователя свойство объекта BlogPost быть отображен в поле пользователя таблицы пользователя. Я могу сделать сопоставление с использованием внешнего ключа с помощью конструктора, но я не уверен, как это сделать, используя только код. Я попытался использовать два оператора MapHierarchy в моем объекте конфигурации, но похоже, что это работает только в том случае, если обе таблицы имеют один и тот же первичный ключ.
Вы видели это http://microsoftpdc.com/Sessions/FT10 демо о EF от pdc09? если нет - взгляните на него. –
Спасибо, Александр, это видео было замечательно, но, к сожалению, он не рассматривал Entity Splitting. Очень рекомендуется смотреть, хотя для тех, кто попадает в EF. – TonyB