Принудительная перестройка Visual Studio на встроенном ресурсе изменена - PullRequest
11 голосов
/ 03 января 2012

У нас есть файл SQL, который является встроенным ресурсом в нашем решении. Когда файл sql изменяется, и мы нажимаем кнопку отладки, решение не перестраивает проект со встроенным ресурсом, если реальный код C # не изменился.

У меня была эта проблема с другими решениями, насколько я себя помню, и я лично знаю, как сделать Build Solution, чтобы убедиться, что он построен ... но это стало проблемой для ряда новых разработчиков, которые могут не забудьте сделать это и запутаться, когда их изменения в файле SQL не отражаются во время отладки ... поэтому мне было интересно, если кто-нибудь знает простое исправление.

Ответы [ 3 ]

3 голосов
/ 28 марта 2012

Самое простое решение - это «перестроить» вместо «построить». Другие люди будут «чистить», а затем «строить», чтобы быть на 100% уверенными.

Встроенные ресурсы не обновляются в отладочных DLL, если только выходная DLL не урезана, что может быть гарантировано только при перестроении и очистке.

0 голосов
/ 10 августа 2017

Я столкнулся с той же проблемой с VS2017.

Вот что у меня сработало:

  1. Откройте файл .resx. Убедитесь, что вы находитесь в Редакторе ресурсов , не используйте редактор XML, поскольку иногда внесенные в него изменения не приводят к генерации Designer.cs
  2. Убедитесь, что Designer.cs не открыт.
  3. Сделайте небольшое изменение, сохраните
  4. Отменить изменения, сохранить
0 голосов
/ 05 декабря 2016

К сожалению, очистка и восстановление не всегда работают для файлов ресурсов. Моя проблема была с файлом строковых ресурсов, и в VS2016 я исправил следующее:

  1. Закройте .resx и .Designer.cs, если они открыты в IDE
  2. Удалить класс .Designer.cs (щелкнуть правой кнопкой мыши, удалить в обозревателе решений)
  3. Дважды щелкните файл .resx в обозревателе решений, чтобы открыть
  4. При необходимости измените «Access Modifier» с «Public» на «No Generation» и сохраните
  5. Измените «Access Modifier» с «No Generation» на «Public» и сохраните => код .Designer.cs должен затем обновить
...