zoukankan      html  css  js  c++  java
  • 使用缓存技术提高效率

     

    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");

  • 相关阅读:
    objectivec 多个参数的函数的例子
    EDM 电子邮件制作规范
    一封让老总流泪的辞职申请书
    10个优秀的JavaScript参考手册
    应聘需知
    理解内联(display:inline)和浮动(float:left;)的区别
    写CSS常见错误,童鞋们注意了
    15个css常识
    经典设计网站推荐
    2011年春运电话订火车票流程
  • 原文地址:https://www.cnblogs.com/meiproject/p/754601.html
Copyright © 2011-2022 走看看