Ошибки Javascript после обновления до .NET 4.0 - PullRequest
0 голосов
/ 26 мая 2011

Я унаследовал работающее веб-приложение VB.NET 2.0, в котором есть несколько пользовательских элементов управления с GridViews внутри панелей обновления. После запуска мастера обновления VS 2010 приложение отлично работает в отладчике, за исключением пары таких Gridview. В них обновление и удаление работы, но добавление нового элемента вызывает следующую ошибку javascript при нажатии кнопки «Сохранить» (вызов DoPostBackWithOptions):

Microsoft jscript runtime error 
Sys.WebForms.PageRequestManagerServerErrorException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

Моя теория заключается в том, что с кодом все в порядке (я его не трогал) и что есть какая-то проблема конфигурации, вызывающая это. Я просмотрел SO и в других местах и ​​настроил свою веб-конфигурацию и обновил сборку инструментария Ajax. Я нигде не шел через JavaScript ScriptResource.axd, выдавая ошибку. Есть предложения?

Обновление

Приложение работает нормально, если я обновлю его до .NET 3.5 с помощью мастера VS 2008. Однако, если я обновлю его до версии 4.0 с VS 2010, проблема вновь появится.

Ответы [ 2 ]

1 голос
/ 26 мая 2011

Вы пробовали установить controlRenderingCompatibilityVersion?Процесс обновления должен был включить его для вас, но это может быть причиной вашей душевной боли.Он находится в теге <pages... вашего web.config файла ...

0 голосов
/ 27 мая 2011

Это только обходной путь, а не исправление. Но я решил добавить его, чтобы помочь кому-то, у кого может быть похожая проблема.

Что я понял, так это то, что проект обновляется до .NET 3.5 просто отлично, но выход 4.0 сломает его. Я не уверен, нарушает ли это фреймворк или мастер обновления.

Итак, успешный путь для меня был:

  1. Открыть в VS 2008 и запустить обновление Мастер обновления до 3.5.
  2. Откройте проект снова в VS 2010 и запустите мастер обновления, но выберите оставить его на 3.5 рамки.

На данный момент проект ведет себя хорошо, и я могу использовать VS 2010 для своих обновлений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...