在web配置转换中添加静态内容

时间:2017-05-17 16:10:07

标签: .net web-config-transform

我有一个用于本地测试的Web.Config文件,我有一个web.Release.Deploy.config转换,我希望包含静态内容。 我对web配置转换不是很熟悉。我已将此添加到web.release.deploy.config中。

 <system.webServer xdt:Transform="Insert">
    <staticContent>
      <mimeMap fileExtension=".nupkg" mimeType="application/zip" />
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
      <mimeMap fileExtension=".woff2" mimeType="application/x-font-woff2" />
    </staticContent>
  </system.webServer>

我应该为此添加规则还是语法看起来正确?

或者它应该是这样的,因为system.webserver元素只是没有插入静态内容?

 <staticContent xdt:Transform="Insert">
      <mimeMap fileExtension=".nupkg" mimeType="application/zip" />
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
      <mimeMap fileExtension=".woff2" mimeType="application/x-font-woff2" />
    </staticContent>

2 个答案:

答案 0 :(得分:1)

我知道这已经过时了,但这是我在变换中添加额外的fileExtensions的方法:

<staticContent xdt:Transform="InsertIfMissing">
  <remove fileExtension=".css"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />
  <mimeMap fileExtension=".css" mimeType="text/css"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />
  <remove fileExtension=".js"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />
  <mimeMap fileExtension=".js" mimeType="text/javascript"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />
  <remove fileExtension=".jpg"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />
  <mimeMap fileExtension=".jpg" mimeType="image/jpeg"  xdt:Transform="InsertIfMissing"  xdt:Locator="Match(fileExtension)" />
  <remove fileExtension=".png"  xdt:Transform="InsertIfMissing"  xdt:Locator="Match(fileExtension)" />
  <mimeMap fileExtension=".png" mimeType="image/png"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />
</staticContent>

这对我有用,因为我的初始web.config已包含一些现有值:

<staticContent>
  <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="31.00:00:00" />
  <remove fileExtension=".woff" />
  <mimeMap fileExtension=".woff" mimeType="application/font-woff" />
  <remove fileExtension=".woff2" />
  <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
</staticContent>

@AsierVillanueva的例子,因为我无法在评论中格式化:

<mimeMap fileExtension=".css" mimeType="text/css"  xdt:Transform="Remove" xdt:Locator="Match(fileExtension)" />  
<remove fileExtension=".css"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />  
<mimeMap fileExtension=".css" mimeType="text/css"  xdt:Transform="InsertIfMissing" xdt:Locator="Match(fileExtension)" />  

答案 1 :(得分:0)

对我有用的答案是这样的。

 <staticContent xdt:Transform="InsertIfMissing">
      <mimeMap fileExtension=".nupkg" mimeType="application/zip" />
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
      <mimeMap fileExtension=".woff2" mimeType="application/x-font-woff2" />
    </staticContent>

这很有效,因为插入位于静态内容标记上。希望这可以帮助。