Загрузка foo
с тем же контекстом , так как добавление нового bar
с соответствующим foo
не вызовет дублирования. Я предполагаю, что ваш реальный код использует два разных контекста.
Единственное, что нужно изменить в коде (который не будет компилироваться, потому что foo
- это IQueryable<Foo>
, а не Foo
) - это материализовать foo
, например:
var foo = (from f in context.Foos
where f.FooId == 1
select f).Single();
Кроме этого, фрагмент кода в порядке.