У меня сейчас странная проблема со старым проектом.Проект использует FormView для редактирования данных.FormView привязан к LinqDataSource.После обновления отредактированного объекта я получаю исключение
System.Data.Linq.ChangeConflictException - Row not found or change
.Я уже некоторое время гуглю, и посты, которые я прочитал, говорят мне, что это проблема параллелизма.Я бы согласился, если бы кто-то действительно обновил данные за это время, но никто этого не делает.
Вот так выглядит LinqDataSource:
<asp:LinqDataSource ID="ldsFirma" runat="server" ContextTypeName="mynamespace.myDataContext"
EnableUpdate="True" TableName="Firmendatens" Where="Kennummer == @Kennummer"
OnSelecting="ldsFirma_Selecting" StoreOriginalValuesInViewState="False" OnUpdating="ldsFirma_Updating">
<WhereParameters>
<asp:Parameter Name="Kennummer" Type="Int32" />
</WhereParameters>
</asp:LinqDataSource>
Это открывающий тегFormView:
<asp:FormView ID="fvFirma" runat="server" DataKeyNames="Kennummer" DataSourceID="ldsFirma" ...
Обновление вызывается с помощью кнопки ImageButton:
Что можно сделать, чтобы исправить это.Кажется, что не каждый ряд затронут этим.Я изменил значение подряд несколько часов назад с помощью другого веб-приложения.С тех пор я перестраивал и очищал веб-приложение, с которым у меня в настоящее время возникают проблемы несколько раз, но это ничего не меняет.
На самом деле я ищу свойство "DisableConcurrency", которое я могу установитьк ложному, но, к сожалению, LDS не предоставляет такую вещь.
Есть предложения?