惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

aimingoo的专栏
aimingoo的专栏
腾讯CDC
Y
Y Combinator Blog
L
LangChain Blog
B
Blog
U
Unit 42
P
Proofpoint News Feed
G
Google Developers Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 【当耐特】
WordPress大学
WordPress大学
月光博客
月光博客
Vercel News
Vercel News
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
MyScale Blog
MyScale Blog
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
酷 壳 – CoolShell
酷 壳 – CoolShell
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
云风的 BLOG
云风的 BLOG
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 叶小钗

博客园 - I Love Melinda

ASP.NET 2.0运行时简要分析 为ASP.NET 2.0菜单控件增加target属性 Web开发调试 整个站点默认禁用 Session,而某个页面不禁用的做法。 如何进行.NET高效开发 61条面向对象设计的经验原则 ADO.NET 的最佳实践技巧 整个站点默认禁用 Session,而某个页面不禁用的做法。 [导入]类似baidu google分页页码效果的代码 [导入]分页存储过程 [导入]Anders Hejlsberg谈C#、Java和C++中的泛型 [导入]如何进行.NET高效开发 [导入].NET中的正则表达式使用高级技巧 [导入]整个站点默认禁用 Session,而某个页面不禁用的做法。 [导入]ADO.NET 的最佳实践技巧 [导入]61条面向对象设计的经验原则 [导入]Atlas 实现机制浅析 [1] [导入]Ajax.net用户指南 [导入]Ajax:Web应用开发新理念 [导入]使用Ajax的挑战
ASP.Net使用缓存技术提高效率
I Love Melinda · 2006-06-12 · via 博客园 - I Love Melinda

 

ASP.Net的缓存技术大大地提高了效率,本人将代码的简单的实现代码贴出:

一、在页面中显示时,读缓存数据,加载XML数据

public void LoadData()
  {
   DataView Source = (DataView)Cache["MyData"];
   if(Source == null)
   {
    DataSet ds = new DataSet();
    FileStream fs = new FileStream(Server.MapPath("LoginMsg.xml"), FileMode.Open,FileAccess.Read);
    StreamReader reader = new StreamReader(fs);
    ds.ReadXml(reader);
    fs.Close();
    Source = new DataView(ds.Tables[0]);
    Cache.Insert("MyData", Source, new CacheDependency(Server.MapPath("LoginMsg.xml")));
    ErrorMsg.Text = "从文件中读取的数据";
   }
   else
   {
    ErrorMsg.Text = "从缓存中读取的数据";
   }
   MyDataGrid.DataSource = Source;
   MyDataGrid.DataBind();
  }

二、用XML存储交互数据,将数据放置到缓存中

private void LoginMsg_Click(object sender, System.EventArgs e)
  {
   if(!Page.IsValid)
   {
    ErrorMsg.Text = "必需输入登录信息";
    return;
   }
   DataSet ds = new DataSet();
   FileStream fs = new FileStream(Server.MapPath("LoginMsg.xml"),FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
   StreamReader reader = new StreamReader(fs);
   ds.ReadXml(reader);
   fs.Close();
   DataTable dt = ds.Tables[0];
   DataRow newrow = dt.NewRow();
   newrow["custom_email"] = CustomEamil.Text;
   newrow["custom_pass"] = CustomPass.Text;
   newrow["login_time"] = DateTime.Now.ToString();
   fs = new FileStream(Server.MapPath("LoginMsg.xml"), FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
   TextWriter writer = new StreamWriter(fs);
   writer = TextWriter.Synchronized(writer);
   ds.Tables[0].Rows.Add(newrow);
   ds.WriteXml(writer);
   writer.Close();
   Cache.Remove("MyData");
   LoadData();

  }