Я не вижу проблем с использованием свойства навигации в вашем примере. Также нет необходимости в области транзакции, потому что SaveChanges
использует транзакцию внутри.
Теоретически, если вы удалите все ассоциации в вашей концептуальной модели (дизайнер EDMX) и вручную удалите все ассоциации в SSDL-части файла EDMX, а затем отобразите FK на новые скалярные свойства, вы сможете это сделать. Но вы настолько сильно ухудшите EF, что вам даже не придется его использовать, и вы вернетесь обратно в ADO.NET или Linq-to-sql. Более того, как только вы дотронетесь до SSDL-части EDMX, вы больше не сможете использовать Обновление из базы данных .