ASP.Net의 캐싱 기술은 효율성을 크게 향상시켰습니다. 간단한 코드 구현 코드를 게시하겠습니다.
1. 페이지에 표시할 때 캐시된 데이터를 읽고 XML 데이터를 로드합니다.
public void LoadData()
{
DataView 소스 = (DataView)Cache["MyData"];
if(소스 == null)
{
DataSet ds = 새로운 DataSet();
FileStream fs = new FileStream(Server.MapPath("LoginMsg.xml"), FileMode.Open,FileAccess.Read);
StreamReader 리더 = 새로운 StreamReader(fs);
ds.ReadXml(reader);
fs.닫기();
소스 = new DataView(ds.Tables[0]);
Cache.Insert("MyData", Source, new CacheDependency(Server.MapPath("LoginMsg.xml")));
ErrorMsg.Text = "파일에서 읽은 데이터";
}
또 다른
{
ErrorMsg.Text = "캐시에서 읽은 데이터";
}
MyDataGrid.DataSource = 소스;
MyDataGrid.DataBind();
}
2. XML을 사용하여 대화형 데이터를 저장하고 해당 데이터를 캐시에 저장합니다.
private void LoginMsg_Click(object sender, System.EventArgs e)
{
if(!Page.IsValid)
{
ErrorMsg.Text = "로그인 정보가 필요합니다";
반품;
}
DataSet ds = 새로운 DataSet();
FileStream fs = new FileStream(Server.MapPath("LoginMsg.xml"),FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
StreamReader 리더 = 새로운 StreamReader(fs);
ds.ReadXml(reader);
fs.닫기();
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 작가 = 새로운 StreamWriter(fs);
작가 = TextWriter.Synchronized(작가);
ds.Tables[0].Rows.Add(newrow);
ds.WriteXml(작가);
작가.닫기();
Cache.Remove("내데이터");
로드데이터()
}