C# 中數據緩存總結

在C#嘗試了5種方法進行數據緩存,具體如下:
(如有遺漏,錯誤歡迎大家指正,歡迎提建議。)
1:Session方法:此方法是針對于每個用戶來的,如果用戶量比較大,那么建議不要采用此方法,否則會大量耗盡服務器資源。
2:Cache方法:
?? ?2.1:對于每個用戶來說訪問的數據最好是一致的,否則要用不同的key標識不同的緩存。?(要緩存的數據至少也是按用戶類型來分的,如果每個用戶可以按條件檢索得到不同的數據的話,即使不造成數據混亂,?估計也跟session沒什么區別了,用戶很多的話太耗服務器資源)。
???? 2.2:如果每個用戶得到的數據都不同,而且用戶數量較多,應該考慮往客戶端存了。
??? 2.3:需要考慮當生成緩存后,如果數據庫中的數據發生變化了。而造成用戶得不到最新的數據的問題。(可參考:"數據庫緩存相關性"的文章)
3:往客戶端寫文件
首先A頁面在運行的時候,從數據庫中取到了數據集,在顯示出數據報表的同時,A頁面將數據集轉化為xml文件,寫入客戶端。客戶如果要打印該報表,那么程序就從客戶端取存入的xml文件,如果xml文件存在,就從中讀取數據并顯示成打印報表顯示出來。如果xml文件不存在,就提示重新檢索數據。
例如:
<script type=text/javascript>? //給客戶機上寫文件
??? function ws()
??? {
?????? var fso,ctf;
?????? fso = new ActiveXObject("Scripting.FileSystemObject"); //IE的安全設置里面需要把沒有標記為安全的ActiveX控件和腳本設置
????????為“啟用”,才不會提示。
?????? ctf = fso.CreateTextFile("c:\\luiTestfile.txt",true);//true為可以覆蓋原有文件??????
?????? ctf.Write("write content in file");
?????? ctf.Close();???????
??? }
</script>
但是,每次操作客戶端的文件,系統都會提示是否運行沒有標識的ActiveX控件,用戶點否就不能成功保存文件了。
4:用cookie來存儲
--------------------寫cookie----------------------------------------
HttpCookie myCookie = new HttpCookie("DateCookie_lui");//DateCookie_lui為要創建的cookie鍵值對的鍵名。
DateTime now = DateTime.Now;
myCookie.Value = now.ToString();//給此cookie賦值
myCookie.Expires = now.AddMinutes(1);//設置cookie的過期日期和時間(此為1分鐘后過期),在客戶再次訪問服務 器同時附帶cookie文件,如其中以這個名字的cookie過期,就會自動清除它。
this.Response.SetCookie(myCookie);//將此cookie寫入客戶端
--------------------讀cookie----------------------------------------
HttpCookie myCookie = new HttpCookie("myTestCookie_lui");//創建一個cookie操作對象
myCookie = Request.Cookies["DateCookie_lui"];//得到客戶端傳來的cookie數據,DateCookie_lui為要取的cookie鍵值對的鍵名
if(myCookie != null)
Response.Write(" Cookie Name is:"+myCookie.Name+". Cookie Value is:"+myCookie.Value);
else
Response.Write(" Not found!");
用cookie的方法存儲數據,經過我反復嘗試發現cookie存儲值的大小被限定,(每項僅可存漢字僅1686個,字母或數字僅5059個),且cookie文件的大小一旦超過大小(20kb左右)就會導致找不到頁面的錯誤,且每個cookie文件中只能存20項鍵值對。
5:嘗試在A頁面把dataset轉化為xml字符串,隱藏于頁面中,post提交到B頁面;在B頁面取到該xml字符串,然后將xml字符串轉化為dataset,生成報表。
將dataset轉化為xml的字符串:
?vDataXmlStr=ds.GetXml();//得到數據集的xml字符串
?this.hidXmlStr.Value=vDataXmlStr;//存入頁面的隱藏元素中
------------------------------------------------------------------------
將xml字符串轉化為dataset:
?vXmlStr = Request.Form["hidXmlStr"].ToString();//取xml字符串的變量值
?System.IO.StringReader vSR = new System.IO.StringReader(vXmlStr);//讀取字符串
?ds.ReadXml(vSR);//將xml讀入dataset中

轉載于:https://www.cnblogs.com/ASPXML/archive/2011/09/07/2170186.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/275282.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/275282.shtml
英文地址,請注明出處:http://en.pswp.cn/news/275282.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

react 引入 mobx @babel/core: 7.2.2

為什么80%的碼農都做不了架構師&#xff1f;>>> yarn add babel/plugin-proposal-class-propertiesyarn add babel/plugin-proposal-decorators"babel": {"plugins": [["babel/plugin-proposal-decorators", {"legacy": …

面試官問:怎么自動檢測你使用的組件庫有更新

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以加我微信 ruochuan12本文來自V同學投稿的源碼共讀第六期筆記&#xff0c;寫得很有趣。現在已經進行到第十期了。你或許經常看見 npm 更新的提示。npm 更新提示面試官可能也會問你&#xff0c;組件庫…

設計模式完整備忘錄

小言&#xff1a;這不是設計模式講解型博文&#xff0c;以下將設計模式的概述、類圖&#xff0c;代碼示例&#xff0c;總結分每篇博文單獨展示&#xff0c;現將其歸類&#xff0c;便于以后翻閱&#xff0c;設計模式也不是一兩個月學完了就能完全領悟&#xff0c;它只告訴我們幾…

使用Microsoft Web Application Stress Tool對web進行壓力測試

你的Web服務器和應用到底能夠支持多少并發用戶訪問&#xff1f;在出現大量并發請求的情況下&#xff0c;軟件會出現問題嗎&#xff1f;這些問題靠通常的測試手段是無法解答的。本文介紹 了Microsoft為這個目的而提供的免費工具WAS及其用法。另外&#xff0c;本文介紹了一種Web應…

2021前端高頻面試題整理,附答案

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以加我微信 ruochuan12若川視野原意是若川的前端視野。但太長了就留下了四個字&#xff0c;不知道的以為關注的不是技術公眾號。今天分享一篇慕課網精英講師河畔一角的好文章~廢話不多說&#xff0c;…

OO第二單元作業小結

總結性博客作業 第一次作業 (1)從多線程的協同和同步控制方面&#xff0c;分析和總結自己三次作業的設計策略。 第一次作業為單電梯傻瓜調度&#xff0c;可以采用生產者——消費者模型&#xff0c;是一個有一個生產者&#xff08;標準輸入電梯請求&#xff09;&#xff0c;一個…

dribbble加速vpn_關于Dribbble設計的幾點思考

dribbble加速vpn重點 (Top highlight)I’d like to start with the following quote from Paul Adam’s “The Dribbbilisation of Design,” a powerful read that examines the superficiality of modern product design portfolios, often containing Dribbble posts that l…

JS Compress and Decompress

<html><head><title>JavaScript字符串之壓縮與還原</title><meta http-equiv"Content-Type"content"text/html; charsetutf-8"/><script type"text/javascript"><!--/** * 壓縮 */functionCompress(strN…

尤雨溪推薦神器 ni ,能替代 npm/yarn/pnpm ?簡單好用!源碼揭秘!

1. 前言大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以加我微信 ruochuan12想學源碼&#xff0c;極力推薦之前我寫的《學習源碼整體架構系列》jQuery、underscore、lodash、vuex、sentry、axios、redux、koa、vue-devtools、vuex4、koa-compose、…

如何了解自己的認知偏差_了解吸引力偏差

如何了解自己的認知偏差Let me introduce you the attractiveness bias theory known as cognitive bias.讓我向您介紹稱為認知偏差的吸引力偏差理論。 Think about a person with outstanding fashion. It will draw our attention, and maybe encourage us to interact with…

隱馬爾可夫模型(HMM)及Viterbi算法

HMM簡介 對于算法愛好者來說&#xff0c;隱馬爾可夫模型的大名那是如雷貫耳。那么&#xff0c;這個模型到底長什么樣&#xff1f;具體的原理又是什么呢&#xff1f;有什么具體的應用場景呢&#xff1f;本文將會解答這些疑惑。  本文將通過具體形象的例子來引入該模型&#xf…

尤大直播分享:vue3生態進展和展望

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以加我微信 ruochuan12前言10月23日&#xff0c;參加了前端早早聊組織的【vue生態專場】&#xff0c;準備寫一波分享方便大家學習。早上有4個話題&#xff1a;volar開發&#xff0c;搭建平臺組件開發…

利用Python查看微信共同好友

思路 首先通過itchat這個微信個人號接口掃碼登錄個人微信網頁版&#xff0c;獲取可以識別好友身份的數據。這里是需要分別登錄兩人微信的&#xff0c;拿到兩人各自的好友信息存到列表中。 這樣一來&#xff0c;查共同好友就轉化成了查兩個列表中相同元素的問題。獲取到共同好友…

女生適合學ux嗎_UX設計色彩心理學,理論與可訪問性

女生適合學ux嗎Colour is an interesting topic, which I feel is often overlooked and sometimes under-appreciated. One of the first things I was taught was the power of colour, how it can have an impact on human emotion, and that there should be purpose behin…

初學者也能看懂的 Vue2 源碼中那些實用的基礎工具函數

1. 前言大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以加我微信 ruochuan12想學源碼&#xff0c;極力推薦之前我寫的《學習源碼整體架構系列》jQuery、underscore、lodash、vuex、sentry、axios、redux、koa、vue-devtools、vuex4、koa-compose、…

清除浮動mini版

1&#xff09; 清除浮動mini版(簡約而不簡單).clr:after { content:"";display:table;clear:both;}.clr{zoom:1;} 轉載于:https://www.cnblogs.com/jinbiao/archive/2011/09/26/2191170.html

Fiddler 十分鐘最全使用介紹

Wireshark 、HTTPWatch、Fiddler的介紹 Firebug雖然可以抓包&#xff0c;但是對于分析http請求的詳細信息&#xff0c;不夠強大。模擬http請求的功能也不夠&#xff0c;且firebug常常是需要“無刷新修改”&#xff0c;如果刷新了頁面&#xff0c;所有的修改都不會保存。Wiresha…

視覺測試_視覺設計流行測驗

視覺測試重點 (Top highlight)I often discuss the topic of improving visual design skills with junior and mid-level designers. While there are a number of design principles the designers should learn and practice, one important skill that is not often consid…

如何給開源項目提過 PR 呢?其實很簡單

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以加我微信 ruochuan12源碼共讀群里有小伙伴聊到如何給開源項目提PR&#xff0c;所以今天分享這篇文章。你有給開源的庫或者框架提過 PR 嗎&#xff1f;如果沒有&#xff0c;那么今天的文章會教你怎么…

一次回母校教前端的經歷

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以加我微信 ruochuan12已進行了三個月&#xff0c;很多小伙伴都表示收獲頗豐。分享一篇武大畢業的耀耀大佬的文章。有些時候會受限于環境影響&#xff0c;特別是在校大學生。所以要融入到積極上進的環…