У моей компании есть метод, который создает сообщение MailMessage из электронной почты. Метод, который я использую, получает объект Email в качестве параметра, который является простым объектом POCO, свойства внешнего ключа, такие как ToId и FromId, уже установлены для него. Сущность также имеет свойства навигации к сущностям EmailAddress (FromEmailAddress и ToEmailAddress).
То, чего я хочу добиться, это использовать эти свойства навигации. Вот как я смог это сделать, но это выглядит так:
public MailMessage CreateEmail(Email email)
{
var tmpEmail = db.Set<Email>().Create();
db.Emails.Add(tmpEmail);
db.Entry<Email>(tmpEmail).CurrentValues.SetValues(email);
db.SaveChanges();
email = tmpEmail;
А потом я использую электронную почту в своем коде. Таким образом, у сущности теперь есть прокси, поэтому я могу использовать свойства навигации. Есть ли более простой способ сделать это?