Как включить игнорируемые файлы при использовании инструмента публикации в VS2010? - PullRequest
22 голосов
/ 11 августа 2010

У меня есть каталог /media/fonts в моем проекте asp.net mvc, который содержит шрифты для моего сайта. Когда я использую инструмент «Публикация» в Visual Studio, эта папка игнорируется, даже если она включена в мой проект. Другие папки /media/images и /media/css включены просто отлично.

Есть ли способ сказать Visual Studio, чтобы она не игнорировала эту папку при публикации?

Ответы [ 3 ]

43 голосов
/ 04 ноября 2010

Выберите файлы шрифтов и измените действие «Создать» как «Содержимое» из окна свойств.

27 голосов
/ 23 марта 2011

Вы можете исправить это навсегда, изменив действие по умолчанию для расширения файлов шрифтов (.eot, .ttf и т. Д.)

http://blog.andreloker.de/post/2010/07/02/Visual-Studio-default-build-action-for-non-default-file-types.aspx

Ссылка была убита жестокиммарш времени, поэтому вот копия / вставка его содержимого:

Действие сборки по умолчанию для типа файла можно настроить в реестре.Однако вместо того, чтобы взламывать реестр вручную, мы используем гораздо лучший подход: файлы pkgdef (хорошая статья о файлах pkgdef).По сути, pkdef - это файлы конфигурации, подобные файлам .reg, которые определяют ключи и значения реестра, которые автоматически объединяются в правильном месте в реальном реестре.Если pkgfile удален, изменения автоматически отменяются.Таким образом, вы можете безопасно изменять реестр, не опасаясь что-либо сломать, или, по крайней мере, легко устранить ущерб.

Наконец, вот пример того, как изменить действие по умолчанию для типа файла:

[$RootKey$\Projects{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}\FileExtensions.spark]
"DefaultBuildAction"="Content"

Guid в ключе относится к типу проекта.В этом случае {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} означает «C # проекты».Довольно полный список руководств по типам проектов можно найти здесь .Хотя это явно не распространяется на Visual Studio 2010, Руководства применимы и к текущей версии.Кстати, мы можем использовать C # в качестве типа проекта здесь, потому что проекты MVC на основе C # на самом деле являются проектами C # (и проектами веб-приложений).Для Visual Basic вы должны использовать {F184B08F-C81C-45F6-A57F-5ABD9991F28F}.

$RootKey$ - это абстракция реального раздела реестра, в котором Visual Studio хранит конфигурацию под:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0_Config

(Примечание:Не пытайтесь редактировать что-либо вручную под этим ключом, так как это может быть перезаписано в любое время Visual Studio).

Остальное должно быть самоочевидным: эта опция устанавливает для действия по умолчанию для файлов .spark значение «Содержимое », поэтому эти файлы включаются в процесс публикации.

Все, что вам нужно сделать сейчас, это поместить этот фрагмент текста в файл с расширением pkgdef, поместив его где-нибудь под

%PROGRAMFILES(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\Extensions

(в 64-разрядных системах) или

%PROGRAMFILES(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\Extensions

(в 32-разрядных системах), и Visual Studio автоматически загрузит и применит настройки при следующем запуске.Чтобы отменить изменения, просто удалите файлы.

0 голосов
/ 11 августа 2010

Visual Studio публикует файлы шрифтов. В особом случае мы переименовали расширения с .ttf на .jpg, и они были опубликованы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...