[英]How can I create a temporary file to cache startup work for a library?
我正在使用一個C#庫,該庫在啟動時執行一些昂貴的計算。 我想緩存此計算,以便每次應用程序重新啟動時都不必支付費用(請考慮使用EF和預編譯的視圖)。
我想緩存的信息很容易以文本格式寫入文件。 因此,在調用該庫時,我想執行以下操作:
此外,我不想永久地將用戶的硬盤這類文件丟掉:我希望在可能的范圍內由操作系統自動清理它們(很像臨時文件)。
另外,因為這是一個庫,所以我不能依賴於正在安裝的其他軟件。 因此,我更喜歡純.NET解決方案。
誰能指出我這樣做的好方法/.NET API?
您可能應該使用ApplicationData目錄存儲緩存文件,例如:
var cacheDir = Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData),
"MyApplicationName");
如果要自動清除,則可以在安裝過程中創建一個空的緩存文件,以便在卸載應用程序時自動刪除該文件。 或在應用程序的安裝程序類中自己編寫清除方法。
我認為您不能依靠操作系統來進行清理,Windows甚至無法清理自己的垃圾文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.