html文件
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
<asp:Label id="lblmsg" style="Z-INDEX: 101; LEFT: 424px; POSITION: absolute; TOP:
72px" runat="server">文件缓存测试</asp:Label>
<asp:Label id="Label3" style="Z-INDEX: 110; LEFT: 88px; POSITION: absolute; TOP:
312px" runat="server">身份证号</asp:Label>
<asp:Label id="Label2" style="Z-INDEX: 109; LEFT: 88px; POSITION: absolute; TOP:
352px" runat="server">信用卡</asp:Label>
<asp:Label id="Label1" style="Z-INDEX: 108; LEFT: 96px; POSITION: absolute; TOP:
272px" runat="server">姓名</asp:Label>
<asp:Button id="RefreshBtn" style="Z-INDEX: 107; LEFT: 240px; POSITION: absolute;
TOP: 416px"
runat="server" Text="刷 新"></asp:Button>
<asp:TextBox id="txtCard" style="Z-INDEX: 106; LEFT: 160px; POSITION: absolute; TOP:
352px" runat="server"></asp:TextBox>
<asp:TextBox id="txtIdno" style="Z-INDEX: 105; LEFT: 160px; POSITION: absolute; TOP:
312px" runat="server"></asp:TextBox>
<asp:TextBox id="txtName" style="Z-INDEX: 104; LEFT: 160px; POSITION: absolute; TOP:
272px" runat="server"></asp:TextBox>
<asp:Button id="AddBtn" style="Z-INDEX: 103; LEFT: 168px; POSITION: absolute; TOP:
416px" runat="server"
Text="添 加"></asp:Button>
<asp:DataGrid id="DataGrid1" style="Z-INDEX: 102; LEFT: 384px; POSITION: absolute;
TOP: 120px"
runat="server"></asp:DataGrid></FONT>
</form>
.aspx文件
using System.IO;
using System.Web.Caching;
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
this.LoadData();
}
}
private void LoadData()
{
DataView dv1=new DataView();
dv1=(DataView)Cache["DataCache5"];
DataSet ds=null;
if(dv1==null)
{
FileStream fs=null;
StreamReader sr=null;
ds=new DataSet();
fs=new FileStream(Server.MapPath("custom1.xml"),FileMode.Open,FileAccess.Read);
sr=new StreamReader(fs);
ds.ReadXml(sr);
fs.Close();
dv1=new DataView(ds.Tables[0]);
Cache.Insert("DataCache5",dv1,new CacheDependency(Server.MapPath("custom1.xml")));
lblmsg.Text="数据从文件中读出...";
}
else
{
lblmsg.Text="数据从缓存中读出...";
}
//绑定到DataGrid1对象
DataGrid1.DataSource= dv1;
DataGrid1.DataBind();
}
private void AddBtn_Click(object sender, System.EventArgs e)//增加一个客户信息到文件中
{
FileStream fs=null;
StreamReader Reader=null;
DataSet ds=new DataSet();
DataRow dr1;
TextWriter tw1;
if(!Page.IsValid)
{
lblmsg.Text="还有域未曾填充...";
}
else
{
ds=new DataSet();
fs=new FileStream(Server.MapPath
("custom1.xml"),FileMode.Open,FileAccess.Read,FileShare.ReadWrite);
Reader=new StreamReader(fs);
ds.ReadXml(Reader);
fs.Close();
dr1=ds.Tables[0].NewRow();
dr1["CustName"]=txtName.Text;
dr1["CustIdno"]=txtIdno.Text;
dr1["CustCard"]=txtCard.Text;
ds.Tables[0].Rows.Add(dr1);
fs.Close();
fs=new FileStream(Server.MapPath
("custom1.xml"),FileMode.Create,FileAccess.ReadWrite,FileShare.ReadWrite);
tw1=new StreamWriter(fs);
tw1=TextWriter.Synchronized(tw1);
ds.WriteXml(tw1);
tw1.Close();
fs.Close();
LoadData();
}
}
private void RefreshBtn_Click()
{
LoadData();
}
Xml文件
<CustName />
<CustIdno />
<CustCard />