Большинство решений здесь не работают, если вы работаете с Visual Studio 2013 и, возможно, 2012. Microsoft, вероятно, представила некоторые оптимизации, чтобы сделать IDE более быстрой, следовательно, они сократили количество случаев, запускающих генератор кода. Следующие сценарии, которые раньше работали, больше не работают:
- Удалить файл aspx или ascx - больше не проверяет этот случай
- Вырезать все содержимое и вставить в файл aspx или ascx - больше не работает, без изменений в ссылках
- Преобразовать в веб-приложение - опция больше не доступна
- Произвольное изменение содержимого файла aspx / ascx - больше не работает (см. 2).
Решение удивительно простое, но немного громоздкое. Чтобы запустить генератор кода, измените что-то, что потребует генерации designer.aspx.cs. Изменение содержимого, которое не влияет на код, например стиль CSS или добавление текста, не вызовет генератор кода. Вы должны изменить ссылочный элемент управления. Вот как это сделать:
В ascx или aspx измените идентификатор элемента управления
<asp:HyperLink ID="MyLink" runat="server" NavigateUrl="~/Default.aspx" Text="Home" />
до
<asp:HyperLink ID="theLINK" runat="server" NavigateUrl="~/Default.aspx" CssClass="tab" Text="Home" />
Перейдите в ascx.cs или aspx.cs и убедитесь, что вы также переименовали все ссылки на «MyLink» в «theLINK». Сохраните и сделайте сборку, и вам будет хорошо идти.