2016-01-08 1 views
1

Я хочу развернуть некоторые элементы интерфейса перед локальным веб-корнем сайта с помощью замены файла. Кажется, я не могу заставить его работать с относительным путем в поле целевого местоположения. Возможно ли это сделать, если tds или я должен использовать событие пост-сборки?Замена файла TDS

Причина, по которой эти активы не включены в проект, заключается в том, что они являются частью решения третьей стороны, но мы все еще хотим, чтобы это отслеживалось в контроле источника, чтобы попытаться упростить настройку проекта.

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

Структура папки выглядит следующим образом:

repo 
    folderToCopy 
sitecore 
    webroot 

Я попытался следующие, используя .. 's основано на том, что с.в. изменил мой источник местоположение, чтобы быть в то время, используя опцию „Сделать выбранный расположение источника относительно“ (изменили это абсолютный путь к ..\folderToCopy\):

../../Sitecore/Website 
/../../Sitecore/Website 

..\..\Sitecore\Website 
\..\..\Sitecore\Website 

ответ

0

из моего понимания, TDS делает замену файлов на основе файлов, опубликованных из соответствующего проекта веб-сайта.

Вы можете иметь относительные замены, такие как:

<Replacement Include=".\assets\folderToCopy\myFile.txt"> 
    <TargetPath>.\assets\targetFolder\myFile.txt</TargetPath> 
    <IsFolder>False</IsFolder> 
    <IsRelative>True</IsRelative> 
</Replacement> 

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

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