Я использую Entity Framework v4 для небольшого проекта. Обычно я использую NHibernate. Моя проблема в том, что у меня случайно был код, который добавил объект, который уже был сохранен в коллекции контекста DB, и когда я сделал SaveChanges(), EF сделал копию объекта, предоставив ему новый Первичный ключ.Entity Framework Добавление существующего Item Causes Clone
Хотя это полезно, это не то, что я хотел. Есть ли способ отключить эту функциональность, и вместо этого возникает исключение?
UPDATE: КОД NOW ВКЛЮЧЕНО
public class CcUser
{
public int Id { get; set; }
[StringLength(50)]
public string TrackingId { get; set; }
[StringLength(50)]
public string MembershipGuid { get; set; }
public bool CookiesConfirmed { get; set; }
[StringLength(200)]
public string Email { get; set; }
public DateTime Modified { get; set; }
}
public class MyDbContext : DbContext
{
public DbSet<CcUser> Users { get; set; }
}
MyDbContext db = new MyDbContext();
var ccUser = db.Users.FirstOrDefault(u => u.TrackingId == id);
ccUser.Modified = DateTime.UtcNow;
db.Users.Add(ccUser);
db.SaveChanges();
Можете ли вы показать код которым вызвал вопрос? –
Код добавлен, спасибо. –