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

Adding static content in web config transform

我有一个用于本地测试的 Web.Config 文件,我有一个 web.Release.Deploy.config 转换,我想将静态内容包含到其中。 我对网络配置转换不是很熟悉。我已将此添加到 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>

对我有用的答案是这个。

 <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>

之所以有效,是因为插入内容位于静态内容标签上。希望这可以帮助。

我知道这是旧的,但这是我在我的转换中添加额外文件扩展的方式:

<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)" />