public void page_load(object src,eventargs e)
{
/*
* 版 权 : copyright by sem it department
* 版 本 : version 0.0.1
* 文 件 : editxml.aspx
* 用 途 : 编辑xml文件(修改、删除行)
* 作 者 : 欧阳云天 @2005-4-9
* 邮 箱 : outrace@soueast-motor.com
* 修 改 :
*/
string filename;
filename = “users_2.xml”;
dataset myds = new dataset();
try
{
filestream fin ;
fin = new filestream(server.mappath(“./files/”+filename), filemode.open, fileaccess.read, fileshare.readwrite);
myds.readxml(fin);
fin.close();
}
catch (exception ex)
{
response.write(ex.message);
}
//绑定修改前的xml
olddata.datasource = myds.tables[0].defaultview;
olddata.databind();
//当ds当中增加新行
datarow newrow = myds.tables[0].newrow();
newrow[“id”] = “44”;
newrow[“username”] = “test user”;
newrow[“userpass”] = “test passwd”;
myds.tables[0].rows.add(newrow);
//绑定新增一条记录的数据
newdata.datasource = myds.tables[0].defaultview;
newdata.databind();
//进行过滤
datarow[] editrow = myds.tables[0].select(“id = 44”);
for(int i=0;i
{
editrow[i][“username”] = “changed user”;
editrow[i][“userpass”] = “changed passwd”;
}
//绑定修改记录后的数据
editdata.datasource = myds.tables[0].defaultview;
editdata.databind();
for(int i=0;i
{
editrow[i].delete(); //把该数据删除
}
//绑定删除记录后的数据
deledata.datasource = myds.tables[0].defaultview;
deledata.databind();
//将myds的改变写入xml
try
{
myds.writexml(server.mappath(“./files/”+filename), xmlwritemode.writeschema);
}
catch (exception ex)
{
response.write(ex.message);
}
myds.dispose();
}
编辑数据| 原数据 | 新增行 | 修改行 | 删除行 |