Недавно я обновил программу EntityFramework с 5 по 6 через программу обновления NuGet. Все, казалось, идет хорошо, и я создал и выполнил свое заявление. Когда я пытался получить первый объект из базы данных, я получил эту ошибку:IsRowVersion может быть настроен только для свойств массива байтов
The property 'UpdatedDate' is not a Byte array. IsRowVersion can only be configured for Byte array properties.
Вот кусок кода, он имеет в виду:
[Timestamp]
public virtual DateTime UpdatedDate { get; set; }
Я попытался удалить атрибут временной метки, но независимо от того, была ли такая же ошибка. Как исправить это, чтобы запустить приложение с EF6?
Ваш код является неправильным. 'ROWVERSION' /' TIMESTAMP' является байтовым массивом и не имеет ничего общего со временем. http://technet.microsoft.com/en-us/library/ms182776.aspx – SLaks
Именно то, что сказал Слэкс. Имя 'Timestamp' ** очень ** вводит в заблуждение для этого. К сожалению, это продолжается до EntityFramework ... – user3038092
Я не понимаю. Столбец таблицы - это datetime, и для свойства модели есть атрибут Timestamp. Даже если это неправильно, почему я получаю такое же сообщение об ошибке, когда я удаляю атрибут timestamp? – Sparafusile