Fehler mehrere Objekte mit dem gleichen Schlüssel DbContext

Ich erhalte einen Fehler

"Im ObjectStateManager ist bereits ein Objekt mit demselben Schlüssel vorhanden. Der ObjectStateManager kann nicht mehrere Objekte mit demselben Schlüssel verfolgen."

Ich habe diese Methode an zwei Stellen angewendet. An erster Stelle - richtig arbeiten, aber an zweiter Stelle habe ich Fehler.

Wie hat sich dieses Problem entschieden?

Meine Methode:

public static void UpdateMehod(ModelEntities context, ProcessedFilest processedFiles)
{
    context.Set<ProcessedFiles>().Attach(processedFiles);
    context.Entry(processedFiles).Property(p => p.ID).IsModified = true;
    context.SaveChanges();
}

Ich erstelle neue Methode:

public static void UpdateProtocol (ModelEntities-Kontext, ProcessedFilesXml processingFilesXml) {var entry = context.Entry (processingFilesXml);

        if (entry.State == EntityState.Detached)
        {
            var set = context.Set<ProcessedFilesXml>();
            ProcessedFilesXml attachedEntity = set.Find(processedFilesXml.ProcessedFileXmlID); 

            if (attachedEntity != null)
            {
                var attachedEntry = context.Entry(attachedEntity);
                attachedEntry.CurrentValues.SetValues(processedFilesXml);
            }
            else
            {
                entry.State = EntityState.Modified; 
            }
        }

        //context.Set<ProcessedFilesXml>().Attach(processedFilesXml);
        //context.Entry(processedFilesXml).Property(p => p.Protocol).IsModified = true;
        //context.SaveChanges();
    }

Aber ich weiß nicht, ob ich Savechanges erstellen soll?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage