2013-06-13 3 views
4

NuGet 패키지를 만들고 특정 설정으로 웹 프로젝트 Web.Config 파일을 업데이트하려고합니다. web.config.transform을 사용하여 응용 프로그램의 web.config 파일을 편집하고 있습니다.Nuget 패키지 - Web.config.transform 추가

<configuration> 
    <appSettings> 
    <add key="WebPToolFolder" value ="~/Tools"/> 
    <add key="ImagesFolder" value ="~/Content/themes/base/images"/> 
    </appSettings> 
</configuration> 

을하지만, 나는 태그를 변경하는 것 같지 않는이 staticContent에 추가하려고하면 :과 같이 - 단순히 appSettings는를 추가 할 때 그것은 잘 일하고있어. 예를 들어, 여기에 web.config.transform 파일입니다

<configuration> 
    <appSettings> 
    <add key="WebPToolFolder" value ="~/Tools"/> 
    <add key="ImagesFolder" value ="~/Content/themes/base/images"/> 
    </appSettings> 
<system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".webp" mimeType="image/webp" /> 
    </staticContent> 
    </system.webServer> 
</configuration> 

그것은 appSettings는이 업데이트가 아닌 staticContent 태그 - 어떤 아이디어?

+0

이 문제에 대한 해결책을 찾았습니까? – fraabye

+0

아니, 아직 운이 아직! – Deano

답변

0

업데이트 할 태그에 xdt : Transform = "Replace"속성을 추가해 보셨습니까? 좋은 Microsoft 문서가있다

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <appSettings> 
    <add key="WebPToolFolder" value ="~/Tools" xdt:Transform="Replace"/> 
    <add key="ImagesFolder" value ="~/Content/themes/base/images" xdt:Transform="Replace"/> 
    </appSettings> 
    <system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".webp" mimeType="image/webp" xdt:Transform="Replace"/> 
    </staticContent> 
    </system.webServer> 
</configuration> 

here

당신은 초기 마크 업 및 당신이 어쩌면 우리가 좀 더 도움이 될 수처럼 :)

3

를 보이게하려는 당신은 빈을 둘 필요를 게시하는 경우 당신의 Web.config에서 <staticContent></staticContent> 다음은 XDT를 사용

귀하의 Web.config :

이 같은 요소 = "삽입"을 변환 0
<configuration> 
    <appSettings> 
    <add key="WebPToolFolder" value ="~/Tools"/> 
    <add key="ImagesFolder" value ="~/Content/themes/base/images"/> 
    </appSettings> 
    <system.webServer> 
    <staticContent> 
    </staticContent> 
    <system.webServer> 
</configuration> 

그리고 당신이처럼 변환 파일에 값을 삽입 할 수 있습니다

<system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".webp" mimeType="image/webp" xdt:Transform="Insert"/> 
    </staticContent> 
</system.webServer> 

알아 걸 렸어요. 희망이 도움이됩니다.

3

오래된 질문이지만 누군가가 그것을 땅 경우 다음과 같은 작업을해야합니다 : 귀하의 경우

추가/staticContent 요소 업데이트 : 당신이 사용하지 않도록 그것은, 대안 솔루션입니다

합니다. 파일을 변환,하지만 난 찾을 web.config.install.xdt (및 web.config.uninstall.xdt) 오히려 더 나은 :

<?xml version="1.0"?> 
    <configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <!-- some other elements --> 
    <staticContent xdt:Transform="InsertIfMissing"> 
    <mimeMap fileExtension=".webp" mimeType="image/webp" xdt:Locator="Match(fileExtension)" xdt:Transform="InsertIfMissing" /> 
    </staticContent> 
    <!-- some other elements --> 
</configuration> 

어떤 사전 업데이트 preperations을 수행 할 필요가 없습니다이 방법 , 단지 패키지를 업그레이드하십시오.

Nuget 2.6부터 XDT 지원을 확인하려면 this post을 확인하십시오.