Entity framework EF,如何在不保存其导航属性的情况下将和实体保存到DB?

Entity framework EF,如何在不保存其导航属性的情况下将和实体保存到DB?,entity-framework,Entity Framework,我有一个MessageRecipient对象,该对象将用户作为导航属性。当我将MessageRecipient添加到DB时,它也会尝试添加用户,这不是我想要做的。是否有任何方法可以从MessageRecipient中删除用户,或者只是阻止EF保存导航属性?我不想添加或更新关联的用户对象。谢谢 entity.MessageRecipients.Add(recipient); entity.SaveChanges(); 您似乎正在尝试向用户添加MessageReci

我有一个MessageRecipient对象,该对象将用户作为导航属性。当我将MessageRecipient添加到DB时,它也会尝试添加用户,这不是我想要做的。是否有任何方法可以从MessageRecipient中删除用户,或者只是阻止EF保存导航属性?我不想添加或更新关联的用户对象。谢谢

        entity.MessageRecipients.Add(recipient);
        entity.SaveChanges();

您似乎正在尝试向用户添加MessageRecipient,对吗?如果是这种情况,则需要从数据库获取用户(或附加到当前上下文),然后将消息收件人添加到用户,然后保存更改。这样做不会创建新用户,但实际上会将子数据添加到该对象/数据库。

似乎您正在尝试将MessageRecipient添加到用户,对吗?如果是这种情况,则需要从数据库获取用户(或附加到当前上下文),然后将消息收件人添加到用户,然后保存更改。这样做不会创建新用户,但实际上会将子数据添加到该对象/数据库中。

i“我想做的是将MessageRecipient添加到数据库中。用户是一个导航属性,当我需要它来显示用户详细信息时,它已被填充。现在,当我将MessageRecipient添加到数据库时,它还会尝试更新我根本不想做的用户。因此,如果您通过新的MessageRecipient对用户进行更改,您不希望这些用户更改保留到数据库中吗?只有新的MessageRecipient?我想我遗漏了一个细节。是的,这是正确的:)对不起,我的英语可能会好得多,有时我很难表达我的确切意思。@Pawel,别担心。英语是我的母语,我也有机会对不起,我去度假了,没办法。我们还能解决这个问题吗?我们必须调查该对象的更改跟踪,因为用户对象已附加(因此更新)。您会希望将其设置为“Unchanged”(未更改)“我想做的是将MessageRecipient添加到数据库中。用户是一个导航属性,当我需要它来显示用户详细信息时,它已被填充。现在,当我将MessageRecipient添加到数据库时,它还会尝试更新我根本不想做的用户。因此,如果您通过新的MessageRecipient对用户进行更改,您不希望这些用户更改保留到数据库中吗?只有新的MessageRecipient?我想我遗漏了一个细节。是的,这是正确的:)对不起,我的英语可能会好得多,有时我很难表达我的确切意思。@Pawel,别担心。英语是我的母语,我也有机会对不起,我去度假了,没办法。我们还能解决这个问题吗?我们必须调查该对象的更改跟踪,因为用户对象已附加(因此更新)。您需要将其设置为“未更改”()。