天天看點

.net core 标簽 environment 不起作用

作者:宙冰

在開發.Net Core中的 可以通過設定 <environment> 的屬性 include、exclude 進行不同環境顯示設定,如下 :

<environment include="Development">
    <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />
    <link rel="stylesheet" href="~/css/site.css" />
</environment>
<environment exclude="Development">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css"
              asp-fallback-href="~/lib/bootstrap/dist/css/bootstrap.min.css"
              asp-fallback-test-class="sr-only" asp-fallback-test-property="position" asp-fallback-test-value="absolute" />
    <link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" />
</environment>           

這個在Layout.cshtml中設定後,可以在不同環境顯示效果

但我在Areas中的設定後沒有起作用,如下

<environment exclude="Development">
    <script src="~/js/wechat.pay5.js" asp-append-version="true"></script>
    <script src="~/js/Order/ClientOrder.Index5.js" asp-append-version="true"></script>
</environment>
<environment include="Development">
    <script src="~/js/wechat.pay5.js?v=1" asp-append-version="true"></script>
    <script src="~/js/Order/ClientOrder.Index5.js?v=1" asp-append-version="true"></script>
</environment>           

在打開的頁面中檢視源碼,所設定的環境标簽不起作用,如下:

.net core 标簽 environment 不起作用

檢視閱了相關文檔後,看到原因是沒有加 taghelper,在目前頁面加上如下的代碼即可

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers           

加上後,查詢代碼顯示如下:

.net core 标簽 environment 不起作用

如果每個界面都寫的話,那太麻煩,可以在目前Views檔案夾下加入_ViewImports.cshtml,内容就是上面所寫的内容,如下圖

.net core 标簽 environment 不起作用
.net core 标簽 environment 不起作用

繼續閱讀