Asp.net

這些在 ASP.NET Web Forms 4.5 中引用捆綁 CSS 的方法有什麼區別?

  • August 14, 2019

我使用 Visual Studio 2012 和內置模板(在 Add -> New Project 下)創建了一個面向 .NET Framework 4.5 的全新 ASP.NET Web Forms Web 應用程序項目。在預設提供的 Site.Master 頁面中,我看到一些包含頁面上的 CSS 的標記,如下所示:

<webopt:BundleReference runat="server" Path="~/Content/css" />

但是,我注意到我可以使用其他程式碼來代替……

<%: Styles.Render("~/Content/css") %>

當我查看呈現的頁面時,結果似乎是一樣的。使用 webopt:BundleReference 和使用 Styles.Render 有什麼區別?

其中一種方法比另一種更好嗎?

<%: Styles.Render %>語法適用於 ASP.NET MVC(它不能使用 ASP.NET 控制項,因為它們沒有真正的頁面上下文可供使用)。該BundleReference控制項用於 WebForms。

ASP.NET MVC 可以使用 WebForms 作為視圖引擎來替代 Razor(您會看到太多的“@”符號),這就是為什麼會有一些交叉。

我想他們添加了 Control 以保持一致,而不是要求 WebForms 人員使用頁面的呈現功能(<%標籤)。

當我查看呈現的頁面時,結果似乎是一樣的。使用 webopt:BundleReference 和使用 Styles.Render 有什麼區別?

據了解,BundleReference 不僅用於包含腳本和样式引用,還用於將它們捆綁在一起以提高頻寬效率。請參閱教程捆綁和縮小。我認為後者只是包含一個或多個符合 URL 模式的腳本的助手。

引用自:https://stackoverflow.com/questions/12480895