У меня проблема с веб-сайтом, для которого я использую VS 2008, до тех пор, пока несколько месяцев назад я не купил VS 2010. Я не обновлял веб-сайт - VS 2010 спросил меня, хочу ли я и я сказал «нет». Я столкнулся с проблемой, когда впервые попытался использовать VS 2010 для редактирования этого веб-сайта - нашел обходной путь, который работал последние 3 месяца. Но теперь, внезапно, обходной путь кажется неудачным.
При работе на веб-сайте из окна дизайна (либо в 2008, либо в 2010 году) можно дважды щелкнуть, например, кнопку, и он откроет код для события нажатия кнопки.
По какой-то причине, которую я до сих пор не выяснил, VS 2010 решает сделать совершенно новый сабвуфер событий, в дополнение к тому, который я уже получил . Например, у меня есть кнопка с событием нажатия (создано в VS 2008), например:
Protected Sub btn_next_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_next.Click
...
End Sub
Как только я открываю веб-сайт в VS2010 и дважды щелкаю кнопку в окне дизайна, он создает совершенно новое событие (дублирует весь код внутри «sub / end sub»). ) вот так:
Protected Sub btn_next_Click1(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_next.Click
...
End Sub
(обратите внимание, что в дубликате подпрограммы события он меняет имя подпрограммы, добавляя '1')
Если я удаляю дубликат саба, он просто возвращается в следующий раз, когда я дважды щелкаю кнопку в конструкторе.
Не говоря уже о том, что, если я удаляю дубликат подпрограммы и пытаюсь создать сайт, я получаю сообщение об ошибке, сообщающее, что он не может найти 'Sub btn_next_Click1 ...'. (Я проверил, что у разметки кнопки нет атрибута onclick = ..., который заставил бы ее искать эту конкретную подпрограмму.
Наконец, если я оставлю дубликат подпрограммы там ... событие обрабатывается дважды (исходный подпрограмма запускается один раз, а дубликат подпрограммы запускается один раз, поскольку они оба "обрабатывают" одно и то же событие).
Мой обходной путь - удалить исходный саб. Это, казалось, работало некоторое время. Но с тех пор, как я вчера опубликовал приложение, дубликат подпрограммы запускался дважды, хотя исходный подпункт был удален. Я проверил это, добавив остановки в отладчике, а затем пошагово проходя каждую строку. Этот обходной путь, который работал несколько месяцев, вдруг не работает. Что бы я ни сделал для этого, я не вижу этого.
Кстати, «повторная публикация», о которой я говорю, была для другой страницы на веб-сайте. Страница, на которой возникла проблема, о которой я говорю в этом сообщении, не изменялась месяцами и все это время работала нормально.
Есть опыт? Я собираюсь перекодировать мое приложение с нуля в VS 2010?