Хорошо, поэтому я пробовал несколько разных способов, которые работают несколько раз, а другие нет, поэтому я хотел бы найти надежный способ обеспечения правильной работы этого процесса.
I4 таблицы с 1 таблицей, в которых хранятся остальные 3 идентификатора таблицы при каждой отправке страницы.
Таблица 1 создается одновременно с таблицей 2, где таблица 2 является таблицей форм, а одна - способом соединения всех4 вместе
One O = new One();
_db.Twos.AddObject(T);
O.TId = T.Id;
_db.Ones.AddObject(O);
_db.SaveChanges();
это работает, но у двух других таблиц есть проблемы с 3 работающими и 4 безубыточными с тем же кодом, что и у 3.
1, решение, которое я не хотел бы использовать,чтобы передать каждую таблицу через сеанс или модельный объект до самого конца, а затем отправить их все вместе, но это, я думаю, откроет еще больше проблем.
Edit-
Яне совсем уверен, что еще я могу добавить, но основная проблема в том, что у меня есть 1 базовая таблица с 3 подтаблицами, и новые записи создаются в каждой таблице в разное время.
3 сохраняет
1st =новый основной рекордерd + 1 новая запись вспомогательной таблицы - работает
2nd = обновить базовую запись + 1 новая запись вспомогательной таблицы - works
3rd = обновить базовую запись + 1 новая запись вспомогательной таблицы - разрывы
2-й / 3-й пример кода сохранения с Th, являющимся переданным табличным объектом, который представляет 3-ю таблицу, и O, являющимся базовой таблицей, как показано в коде вверху
O.Three = Th;
_db.SaveChanges();
Это правильно вытягивает идентификатори сохраняет его в основной таблице при втором сохранении, но не при третьем сохранении, даже если это тот же код и таблицы имеют одинаковые соединения.
Каждый pull-OId является идентификатором основных таблиц, поэтому каждая таблица знаетгде также сохранить.
public ActionResult Three(int OId, FormCollection fc)
Каждый толчок
[HttpPost]
public ActionResult Three(Three Th, FormCollection fc)
Как ничего, кроме изменений ссылок, я думаю, что это еще один вопрос, который важен, поскольку все, что он в основном назначает дату / времяЗначения таблицы, которые затем проверяются, если ModelState.IsValid пытается сохранить изменения.
Я также пытался использовать UpdateModel, но это тоже не сработало, так что никто не знала есть ли другие решения для этого?