2016-07-06 5 views
0

Использование VS 2k15, ASP.NET 4.5 My Transform не работает. Я смотрел в предварительном просмотре, и файлы были одинаковыми. Тогда я подумал, может быть, мне пришлось развернуть, чтобы увидеть трансформацию. Поэтому я настроил собственный Deploy на свой рабочий стол, используя конфигурацию развертывания. Проверял web.config после публикации, который по-прежнему соответствует оригиналу.Преобразование Web.Config не работает

Любая идея, что я делаю неправильно?

Я знаю, когда я предварительный просмотр я получаю предупреждение в верхней части предварительного просмотра, который говорит ...»

These files have different encodings. Left file: Unicode (UTF-8) without signature. Right file: Unicode (UTF-8) with signature. You can resolve the difference by saving the right file with the encoding Unicode (UTF-8) without signature. 

Однако, когда я выбираю Сохранить параметры и сохраните файл Deploy, без подписи (поэтому они соответствие) сообщение по-прежнему идет вверх. Просто не знаю, что происходит. Любые идеи, почему я не могу это трансформируют работать?

Web.Config

<?xml version="1.0" encoding="utf-8"?> 
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"> 

    <appSettings> 
     <add key="fileLibrary" value="c:\vsoProjects\localFiles\rlFileLibrary" /> 
    </appSettings> 

    <connectionStrings> 
     <add name="appConnString" connectionString="Data Source=(LocalDb);Initial Catalog=DevDB;User ID=*****;Password=*****;Connect Timeout=300" /> 
    </connectionStrings> 

</configuration> 

Web.ContDeploy.Confi г

<?xml version="1.0" encoding="utf-8"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 

    <appSettings> 
     <add key="fileLibrary" value="R:\rlFileLibrary" xdt:Transform="Replace" xdt:Locator="Match(key)"/> 
    </appSettings> 

    <connectionStrings> 
     <add name="appConnString" connectionString="Data Source=myserver.test.com;Initial Catalog=DeployDB;User ID=*****;Password=*****;Connect Timeout=300" xdt:Transform="SetAttributes(connectionString)" xdt:Locator="Match(name)"/> 
    </connectionStrings> 

    <system.web> 
     <compilation xdt:Transform="RemoveAttributes(debug)" />  
    </system.web> 

</configuration> 
+0

Вы можете показать снимок экрана своего окна Configuration Manager? –

ответ

0

Я не специалист по преобразования, но мой (рабочий) преобразования для ключа AppSettings имеет эту подпись:

<appSettings> 
    <add key="datafolder" value="D:\sites\removedpath\App_Data\" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/> 
    </appSettings> 

, которая немного отличается от вашей

0

I нашел проблему. Этот проект был преобразован некоторое время назад из asp.net 2.x в 4.5.

У web.config все еще был атрибут в разделе конфигурации.

<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"> 
... 
</configuration> 

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

Смежные вопросы