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

  • 相关阅读:
    Mac os下安装pycurl
    Mac os 10.9下面配置JAVA_HOME
    同步,异步,阻塞,非阻塞
    Python处理XML
    Apriori算法在购物篮分析中的运用
    Python抓取双色球数据
    为什么这么多Python框架
    Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明
    ubuntu 开机自动挂载分区
    VIM 配置随手记
  • 原文地址:https://www.cnblogs.com/meiproject/p/754601.html
Copyright © 2011-2022 走看看