Очень странно - я уверен, что у вас есть причины для этого.
Вы можете удалить навигационные свойства (например, не скалярные) из модели , чтобы вы могли сохранитьдва объекта по отдельности.
Шаг 1 - Добавление пользователя:
var user = new User { };
user.UserOrders = new UserOrders { }; // compiler error! no property exists. good!
ctx.Users.AddObject(user); // only user scalar properties added
Шаг 2 - Добавление UserOrder - который все еще должен "связать"Пользователю:
var relatedUser = ctx.Users.First(); // grab the user related to this order
var userOrder = new UserOrder { UserId = relatedUser.UserId }; // explicitly set the FK
ctx.UserOrders.AddObject(userOrder); // UserOrder added with appropriate FK
То, что должно работать - я не пробовал раньше, но попробую.
Имейте в виду, чтоНедостаток этого подхода заключается в том, что вы не сможете загружать или лениво загружать UserOrders
при запросе User
- вам придется вручную присоединиться к FK с помощью LINQ.