⑴ 用360衛士掃描電腦垃圾,有「NET集緩存文件」這項。什麼叫NET集緩存文件可以刪除嗎
可以刪除,但是不建議刪除,只要這個不影響系統的正常運行就不用刪除,如果影響了如卡頓、載入慢或在太大了就刪除
這個全稱 是 NET程序集緩存 ,主要緩存 使用NET 框架的應用程序的資源文件,如某些圖片、dll之類的,刪除會影響下次載入的速度,運行的效率,僅此而已,沒有太大的影響
⑵ .net帶有參數的頁面怎麼進行緩存,緩存後可瀏覽正確頁面
ASP.NET 提供三種主要形式的緩存:頁面緩存、用戶控制項輸出緩存和緩存 API。
頁面輸出緩存作為最簡單的緩存形式,將已經生成的動/靜太頁面全部內容保存在伺服器內容中。當再有請求時,系統將緩存中的相關數據直接輸出,直到緩存數據過期。在這個過程中,緩存不再要再次經過頁面處理生命周期。這樣可以縮短請求響應時間,提高應用程序性能。顯然,頁面輸出緩存適用於不需要頻繁更新數據,而佔用大量時間和資源才能編譯生成的頁面。
實現頁面輸出緩存,通常可以用以下兩種方法:
一、使用@ OutputCache指令
使用@ OutputCache指令,能夠實現對頁面輸出緩存的一般性需要。@ OutputCache指令在ASP.NET頁或者頁中包含的用戶控制項的頭部聲明。這種方式非常方便,只需幾個簡單的屬性設置,就能夠實現頁面的輸出緩存策略。
二、使用HttpCacheability類
該類主要包含用於設置緩存特定的HTTP標頭的方法和用於控制ASP.NET頁面輸出緩存的方法。與.NET Framework 1.x中的HttpCachePolicy類相比,.NET Framework 2.0中的HttpCachePolicy類得到了擴充和發展。
使用這兩種方法,我們可以實現下列功能:
1、使用參數對頁的各個版本進行緩存
使用 ASP.NET,您可以根據指定的 HTTP 標頭的值對某頁的多個版本進行緩存。當請求頁時,您可以指定按傳遞到應用程序的單個標頭、多個標頭或所有標頭進行緩存。
根據 HTTP 標頭值以聲明方式對某頁的各個版本進行緩存
A、 在 ASP.NET 頁中,在 @ OutputCache 指令中包括必需的 Duration 和 VaryByParam 或 VaryByControl 屬性。必須將 Duration 屬性設置為大於零的整數。如果希望只按 HTTP 標頭值進行緩存,則必須將 VaryByParam 屬性設置為「None」。
B、 在 @ OutputCache 指令中,包含 VaryByHeader 屬性,將其值設置為要作為改變緩存內容的依據的 HTTP 標頭的名稱。
下面的示例將頁緩存 60 秒,並根據隨 Accept-Language HTTP 標頭傳遞的值設置要緩存的頁的版本:
<%@ OutputCache Duration="60" VaryByParam="None" VaryByHeader="Accept-Language" %>
注意:如果要根據多個標頭改變緩存的內容,請以分號 (;) 作為分隔符包括標頭名稱的列表。如果要根據所有標頭值改變緩存的內容,請將 VaryByHeader 屬性設置為星號 (*)。
根據 HTTP 標頭值以編程方式對某頁的各個版本進行緩存
A、 在頁的 Page_Load 方法中,對頁的 Response 對象的 Cache 屬性調用 SetCacheability 和 SetExpires 方法。
B、 將 VaryByHeaders 屬性中的 HTTP 標頭值設置為 true。
下面的代碼示例演示如何為有不同的 Accept-Language HTTP 標頭值的請求,將某頁的多個版本緩存一分鍾之久。
protected void Page_Load(object sender, EventArgs e)
{
Response.Cache.SetExpires(DateTime.Now.AddMinutes(1d));
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetValidUntilExpires(true);
Response.Cache.VaryByHeaders["Accept-Language"] = true;
}
注意:如果要根據多個標頭改變緩存的內容,需要在 VaryByHeaders 屬性中設置多個值。如果要根據所有標頭改變緩存的內容,請將 VaryByHeaders["VaryByUnspecifiedParameters"] 設置為 true。
2、使用請求瀏覽器緩存頁的各個版本
基於瀏覽器類型以聲明方式緩存頁的多個版本
A、 在 ASP.NET 頁中,包括一個具有必需的 Duration 以及 VaryByParam 或 VaryByControl 屬性的 @ OutputCache 指令。必須將 Duration 屬性設置為大於零的整數。如果希望僅按瀏覽器類型進行緩存,請將 VaryByParam 屬性設置為「None」。
B、 在 @ OutputCache 指令中,包括 VaryByCustom 屬性並將其設置為「browser」。下面的示例將導致持續緩存該頁達 10 秒。輸出將因瀏覽器類型而異。
<%@ OutputCache Duration="10" VaryByParam="None" VaryByCustom="browser" %>
基於瀏覽器類型以編程方式緩存頁的多個版本
A、 在頁代碼中,對頁的 Response 屬性的 Cache 屬性調用 SetExpires 和 SetCacheability 方法。
B、 調用 SetVaryByCustom 方法,在 custom 參數中傳遞值「browser」。
下面的代碼示例演示如何持續緩存頁的多個版本達 1 分鍾。輸出將因發出請求的瀏覽器的類型而異。
protected void Page_Load(object sender, EventArgs e)
{
Response.Cache.SetExpires(DateTime.Now.AddMinutes(1d));
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetValidUntilExpires(true);
Response.Cache.SetVaryByCustom("browser");
}
3、 使用自定義字元串對頁的各個版本進行緩存
根據自定義字元串對頁輸出的多個版本進行緩存
A、 在 ASP.NET 頁中包括 @ OutputCache 指令,該指令帶有必需的 Duration 和 VaryByParam 屬性。必須將 Duration 屬性設置為大於零的整數。如果不想使用 VaryByParam 屬性提供的功能,則必須將其值設置為「無」。
B、 若要以聲明方式設置自定義字元串,請在 @ OutputCache 指令中包括 VaryByCustom 屬性,並將該屬性設置為您要作為進行不同輸出緩存行為的依據的字元串。
下面的指令根據自定義字元串「minorversion」改變頁輸出。
<%@ OutputCache Duration="10" VaryByParam="None" VaryByCustom="minorversion" %>
1. 若要以編程方式設置自定義字元串,請調用 SetVaryByCustom 方法,並將要使用的自定義字元串傳遞給它。
下面的代碼示例演示如何將自定義字元串設置為「minorversion」。
Response.Cache.SetVaryByCustom("minorversion");
在應用程序的 Global.asax 文件中,重寫 GetVaryByCustomString 方法以指定自定義字元串的輸出緩存行為。
被重寫的方法接受您在 VaryByCustom 屬性或 SetVaryByCustom 方法中設置的字元串,作為它的 arg 參數。例如,有些頁可能根據請求瀏覽器的次版本進行緩存。對於這些頁,可以將 VaryByCustom 屬性設置為「minorversion」。然後,在被重寫的 GetVaryByCustomString 方法中,可以檢查 arg 參數,並根據 arg 參數的值是否為「minorversion」返回不同的字元串。
下面的代碼示例演示一個 Global.asax 文件,其中的 GetVaryByCustomString 方法被重寫。
<%@ Application language="C#" %>
<script runat="server">
public override string GetVaryByCustomString(HttpContext context,
string arg)
{
if(arg == "minorversion")
{
return "Version=" +
context.Request.Browser.MinorVersion.ToString();
}
else
{
return "";
}
}
</script>
⑶ .NET中的緩存有幾種
.NET中的緩存(僅供參考)
一.Output Caching (輸出緩存)
當一個網頁頻繁被訪問的時候,可以通過把整個網頁緩存來提高執行效率。這樣做的優點是,當用戶再次訪問這個網頁的時候,被格式化好的HTML會被直接顯示。
Output Caching 定製的兩種方法:
1.基於底層的API技術
2.基於高層的@OutputCaching
一旦Output Caching 被定製過,那麼這個網頁就會在第一次被訪問的時候生成cache,直到請求過期為止。
二.Page Fragment Caching (回調緩存)
作為Output的緩存的附加功能,還提供一種緩存技術,專門用於緩存用戶控制項或者網頁中的一部分東西。可以指定沒一部分或者某一個區域不被緩存。
在頁面中,指定返回參數,來決定控制項被緩存的部分。使用語句VaryBym語句指定控制項更具參數來改變。
三.Data Caching (數據緩存)
ASP.NET提供了一種非常快捷的方法進行資料庫緩存,用戶可以非常方便的對頁面變數進行緩存。並以此提高程序效率。
一個頁面變數的緩存生命周期與應用程序的緩存生命周期相同。
同時對後台數據進行修改的時候,還需要對Cache進行相應的處理。
四.SQL Cache (配置連接池,提高數據緩存)
通過配置資料庫連接池,只有當資料庫數據被改變的時候,緩存才會改變。
五.Cache Configuration (配置緩存)