Como anexar uma entidade de um contexto no Entity Framework?

Eu uso o EF 4.1 com Repository e DbContext .. POCO com template T4. Para cada Repositório, eu uso um DbContext separado.

Preciso atualizar um objeto com uma propriedade relacionada, no momento recebo este erro

An entity object cannot be referenced by multiple instances of IEntityChangeTracker.

Eu suponho que meu problema é por causaeventObj ecandidate são criados a partir de Repositórios diferentes.

Então, eu estou tentando resolver o problema com este código, sem sucesso.

Minha pergunta?

Como me livrar desse erro?

É possível remover o candidato do seu contexto?

public void UpdateAddingCandidate(Event eventObj, Candidate candidate){
    Event updatedEvent = new Event();
    Candidate updatedCandidate = new Candidate();
    updatedEvent = eventObj;
    updatedCandidate = candidate;
    updatedEvent.Candidate = updatedCandidate;
    db.Entry(updatedEvent).State = EntityState.Modified;     
}

EDITAR

    public void UpdateAddingCandidate(Event eventObj, Candidate candidate)
    {
        /*
        db.Events.AsNoTracking();
        db.Candidates.AsNoTracking();
        */
        db.Entry(eventObj).State = EntityState.Detached;
        db.Entry(candidate).State = EntityState.Detached;

        Event updatedEvent = new Event();
        Candidate updatedCandidate = new Candidate();
        updatedEvent = eventObj;
        updatedCandidate = candidate;
        updatedEvent.Candidate = updatedCandidate;
        db.Entry(updatedEvent).State = EntityState.Detached;
        db.Entry(updatedEvent).State = EntityState.Modified;

    }

questionAnswers(3)

yourAnswerToTheQuestion