我的實體:EF插入重複行,即使父連接
用戶配置: - 的重要性沒有在這裏。
SupportTicket: - 用戶配置
SupportTicketMessage: - 用戶配置 - SupportTicket
我的問題是,每當我試圖插入SupportTicketMessage我得到一個額外的用戶配置插入到數據庫(一個副本),即使我已經附加了相應的SupportTicket。
這裏是我的代碼(SupportTicket類裏面,所以這意味着SupportTicket):
public void AddReply(UserProfile user)
{
SupportTicketMessage msg = new SupportTicketMessage(user, this);
using (DBContext db = new DBContext())
{
db.SupportTickets.Attach(msg.Ticket);
db.SupportTicketMessages.Add(msg);
db.SaveChanges();
}
}
每當我跑這個SupportTicketMessage被插得很好,但它插入即使有重複的用戶配置匹配的一個已經。
這裏有什麼問題?
順便說一句,這裏的supportticketmessage構造:
public SupportTicketMessage(UserProfile author, SupportTicket ticket)
{
Author = author;
Ticket = ticket;
Date = DateTime.Now;
}
任何人都可以幫助我嗎?這真的很煩人! –
看看這個問題,他們解決了這個問題,併爲這個問題提供了三種解決方案:http://stackoverflow.com/questions/5416323/insert-new-object-with-existing-object –
這是另一個可能有幫助:http://stackoverflow.com/questions/7884887/prevent-entity-framework-to-insert-values-for-navigational-properties –