我試圖使用setValues方法將克隆的實體,但我得到了以下錯誤:如何克隆Entity Framework Core中的實體?
實體類型「TariffPeriod」的實例無法被追蹤,因爲與{「ID」相同鍵值的另一個實例}已被跟蹤。在附加現有實體時,請確保僅附加具有給定鍵值的一個實體實例。
下面是代碼:
var period2 = _tariffRepository.GetPeriodFull(period.GUID);
var period3 = new TariffPeriod();
_appDbContext.TariffPeriods.Add(period3);
_appDbContext.Entry(period3).CurrentValues.SetValues(period2);
我看到,誤差是由於主鍵的值被複制到新的實體。那麼,如何在沒有密鑰的情況下複製這些值?
感謝您的幫助 埃裏克
你可以分離period2嗎?然後將其Id設置爲Add和SetValue之間的period3? –