Подтвердить что ты не робот

Заново модифицировано Visual Studio Visual Studio для встроенного ресурса

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

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

4b9b3361

Ответ 1

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

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

Ответ 2

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

  • Закрыть .resx и .Designer.cs, если они открыты в среде IDE
  • Удалить класс .Designer.cs(щелкните правой кнопкой мыши, удалите в проводнике решений)
  • Дважды щелкните файл .resx в проводнике решений, чтобы открыть
  • При необходимости измените "Модификатор доступа" с "Публичный" на "Нет генерации кода" и сохраните
  • Измените "модификатор доступа" с "Нет генерации кода" на "Публичный" и сохраните = > . Затем код .Designer.cs должен обновить

Ответ 3

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

Это то, что сработало для меня:

  • Откройте файл .resx. Убедитесь, что вы находитесь в Редакторе ресурсов, не используйте редактор XML, так как иногда внесенные изменения не будут генерировать генерацию Designer.cs
  • Убедитесь, что Designer.cs не открыт.
  • Сделайте небольшое изменение, сохраните
  • Отменить изменение, сохранить