实体框架代码第一个异常
本文关键字:异常 第一个 代码 框架 实体 | 更新日期: 2023-09-27 18:35:07
i 当我尝试保存我的整个嗡嗡声时,我有这个例外:
An entity object cannot be referenced by multiple instances of IEntityChangeTracker.
这是生成此异常的代码:
var p = Session["mayaProfile"] as MayaProfile;
BuzzMate buzzmate = new BuzzMate();
buzzmate.MayaProfile = p;
SocialBuzzCompaign socialcampaign = _buzzService.GetSocialBuzzCompaign(model.socialBuzzCompaignId);
//Ajouter le BuzzMate
buzzmate.SocialBuzzCompaign = socialcampaign;
buzzmate.JoiningStatus = JoiningStatus.Approved;
buzzmate.SelectionType = BuzzMateSelectionType.InvitedByBuzzLeader;
//try
//
_buzzService.AddBuzzMate(buzzmate);
这是方法AddBuzzMate:
public void AddBuzzMate(BuzzMate buzzMate)
{
_buzzMateRepository.Insert(buzzMate);
_buzzMateRepository.Save();
}
当我尝试保存 Buzzmate 时,我有异常
问题很可能是p
.不要将存储在会话中的实体用于持久性,否则将无法避免此错误。尝试创建p
克隆并将其分配给buzzmate
,如果使用相同的 EF 上下文来加载socialcampaign
并保留buzzmate
它应该可以工作。