Как заставить компилятор Visual Studio игнорировать файл? - PullRequest
9 голосов
/ 05 марта 2009

Кто-нибудь знает способ заставить Visual Studio полностью игнорировать файл при компиляции? У меня есть решение C #, в котором есть файл foo.config, который на самом деле не является стандартным файлом конфигурации - это просто текстовый файл. Во время компиляции VS захватывает файл и бомбы.

Я бы хотел, чтобы это действовало так, как будто это просто текстовый файл. У меня нет возможности изменить имя файла.

РЕДАКТИРОВАТЬ: Обратите внимание, что BuildAction не исключает файлы из компилятора, проверяющие их. Он просто решает, скомпилирован ли файл в сборку, является ли он содержимым (например, jpg или чем-то другим), или же это файл ресурсов. Для получения дополнительной информации: см. Страницу MSDN .

EDIT2: очевидно, если у вас есть текстовый файл с именем foo.config, и он у вас открыт во время сборки, VS2005 выдаст ошибку, думая, что файл должен быть XML. Однако, если вы закроете файл, VS2005 проигнорирует его.

Решение. Проверка Visual Studio вызывает ошибки, если во время сборки у вас открыт несовместимый файл. Пример того, как отключить это (для HTML), см. Пост Скотта Гатри . Как упоминал Аллен, вам также следует включить действие «Сборка» в «Нет». К сожалению, это не остановит ошибки сборки, если у вас открыт файл.

Ответы [ 4 ]

23 голосов
/ 05 марта 2009

клик правой кнопкой мыши> свойства

Действие сборки: установлено значение «Нет»

Edit: Если вы говорите о app.config, вы действительно не можете связываться с форматом этого, вам нужно поместить его в другой файл .config.

Я только что проверил дважды, VS.net не волнует, если он не app.config или web.config, а действие по созданию файла конфигурации установлено на «Нет», оно будет «сообщать об ошибке», если файл открыт, но это не приведет к сбою сборки и не помешает его сборке.

Закройте файл, и ошибки исчезнут, как и ошибки, возникающие при разметке HTML. Отображение этих «ошибок», вероятно, настраивается в vs.net

5 голосов
/ 05 марта 2009

Действие зависит от решения и типа файла. Например (в VS2005), в решении C ++ я могу щелкнуть правой кнопкой мыши на имени исходного файла в обозревателе решений и просмотреть его свойства. Первый параметр «Общие» - это «Исключено из сборки», которое позволит вам исключить файл из процесса сборки, не исключая его из проекта.

Я поднял файл .config в решении C # и нашел опцию «Build Action» в разделе «Advanced». Вероятно, это должно быть установлено на «Нет».

2 голосов
/ 05 марта 2009

Просто щелкните правой кнопкой мыши файл и выберите «Исключить из проекта».

Если вы все еще хотите увидеть его в своем проекте, выберите проект и нажмите кнопку «Показать все файлы» в верхней части обозревателя решений. Это покажет все файлы в дереве каталогов, даже если они на самом деле не являются частью проекта.

1 голос
/ 05 марта 2009

Вы уверены, что VS компилирует файл .config ???

Вы должны проверить его действие сборки в опциях файла и можете установить его на none.

...