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

Должен ли Resource.Designer.cs находиться под контролем источника?

У меня есть Resource.resx, который используется для генерации Resource.designer.cs. Должен ли параметр Resource.designer.cs быть включен или я могу полагаться на Visual Studio, генерируя его, когда это необходимо?

4b9b3361

Ответ 1

Мое предпочтение: если оно было изменено системой сборки, убедитесь, что процесс сборки создаст его и не проверит его.

Для автогенерированных файлов, таких как "designer", я проверяю их. Они изменяются только тогда, когда меняются другие компоненты (по мне). Он генерируется VS и не модифицируется системой сборки.

Ответ 2

Я столкнулся с вашим сообщением о проблеме, которую я испытываю, не совсем так, но это помогло мне найти временное решение. Это то, что я нашел, что могло бы помочь вам...

Я создаю простой файл строковых ресурсов. Затем я использую модифицированную программу CodeProject, которая переводит ее на иностранные языки. (Мы будем использовать профессиональные услуги, как только мы стабилизируем код) Утилита не создает файлы designer.cs. Выполнение перекомпоновать все не создавало и файлы. Похоже, что в любое время, когда вы используете внешний инструмент (а не дизайнер Visual Studio) для изменения файла resx, вы потеряете эти синхронизированные изменения. В моем случае файл конструктора используется просто для сильного ввода строк в имена свойств. Если вы используете идентификаторы, чтобы вытащить строку (старый метод), вам вообще не нужны эти файлы и, следовательно, не нужно будет проверять их в исходном элементе управления. Однако, если вы используете строго типизированный доступ к этой строке (более современный метод), вы должны проверить их.

Как в стороне... Я нашел способ пересинхронизации этих файлов designer.cs с их счетными частями resx, поскольку это была моя проблема... Мне они были нужны. Выбор файла resx в обозревателе решений и настройка свойства CustomTool для PublicResXFileCodeGenerator мгновенно создали файл designer.cs. К сожалению, если он уже установлен, вам необходимо отменить его, а затем повторно установить для создания файла. Если кто-то знает способ заставить воссоздать их с помощью некоторых автоматических средств... Я бы очень признателен.

Спасибо.

Ответ 3

Я не уверен на 100% о сценариях сборки вокруг этого файла. Я думаю, что, скорее всего, Studio, или более подходящий msbuild, будет повторно генерировать файл каждый раз, когда вы создадите приложение, но не уверены.

В любом случае, я все равно проверил бы этот файл по нескольким причинам.

  • Это значение по умолчанию для большинства поставщиков исходного кода в Visual Studio. Они думали намного сложнее об этой проблеме, чем я, и, вероятно, имеют веские причины для этого.
  • Отладка: вряд ли когда-нибудь возникнет проблема в Resource.Designer.cs, но если бы вы были вынуждены строить, прежде чем вы могли бы подключать/отлаживать
  • Контроль источника должен быть историей ваших источников. Что хорошо, если вы не видите все источники, связанные с вашим приложением.

Первая причина - самая важная