У меня проблема с EF 4.0, с которой, я надеюсь, кто-то может помочь. В настоящее время у меня есть объект, который я хочу обновить последним в режиме выигрыша (то есть игнорировать проверки параллелизма и просто перезаписывать то, что в БД, тем, что отправлено). Кажется, Entity Framework включает не только первичный ключ объекта в предложении where сгенерированного sql, но также и любые поля внешнего ключа. Это раздражает, так как это означает, что я не получаю истину последним в семантике побед и мне нужно знать, какое значение имеет поле fk перед обновлением, или я получаю исключение параллелизма.
Мне известно, что это может быть закорочено путем включения поля внешнего ключа, а также свойства навигации объекта. Я хотел бы избежать этого, если это возможно, поскольку это не очень чистое решение.
Мне просто интересно, есть ли другой способ переопределить это поведение? Это больше похоже на ошибку, чем на функцию. У меня нет проблем с выполнением проверок параллелизма, если я даю указание сделать это, но неспособность полностью обойти параллелизм является чем-то вроде помехи, поскольку существует много допустимых сценариев, где это не нужно