Многие, кто сейчас работают с Entity Framework, жалуются на отсутствие внешних ключей в концептуальной моделе, то есть в тех классах, которые генерирует Entity Framework. В результате, простая задача по добавлению или обновлению записи часто выглядит не очень изящно. То есть либо приходится подгружать связанную запись, что приводит к выполнению лишнего запроса к базе данных, либо создавать новый объект класса EntityKey, что требует написания лишнего кода и после простого и простого в использовании LINQ to SQL выглядит по-меньшей мере странно.
К счастью, команда Entity Framework учла эти пожелания и в новой версии появится возможность выбирать при генерации концептуальной модели, добавлять ли в нее внешние ключи или нет. В результате обновление записей будет выглядеть довольно просто и понятно:
Подробно об этом можно почитать в блоге команды Entity Framework.
К счастью, команда Entity Framework учла эти пожелания и в новой версии появится возможность выбирать при генерации концептуальной модели, добавлять ли в нее внешние ключи или нет. В результате обновление записей будет выглядеть довольно просто и понятно:
using (var context = new Context())
{
//Create a product and a relationship to a known category by ID
Product p = new Product
{
ID = 1,
Name = "Bovril",
CategoryID = 13
};
//Add the product (and create the relationship by FK value)
context.Products.AddObject(p);
context.SaveChanges();
}
Подробно об этом можно почитать в блоге команды Entity Framework.