zoukankan
html css js c++ java
ASP.Net 更新储存在xml文件中的数据(update操作)
XML文件请见
ASP.Net中实现XMl的标识列(ID列)或自增长列
代码如下:
更新按钮事件:
private
void
Btn_update_Click(
object
sender, System.EventArgs e)
{
Xml_UpDt(ViewState[
"
uid
"
].ToString());
//
调用Xml_UpDt方法
BindDG();
//
重新绑定datagrid
}
Xml_UpDt方法:
void
Xml_UpDt(
string
userid)
{
string
username
=
this
.Txt_name.Text;
string
userpass
=
this
.Txt_pass.Text;
string
usermail
=
this
.Txt_mail.Text;
string
usersite
=
this
.Txt_site.Text;
string
usermsn
=
this
.Txt_msn.Text;
string
[] Columns
=
{
"
username
"
,
"
userpass
"
,
"
usermail
"
,
"
usersite
"
,
"
usermsn
"
}
;
string
[] ColumnsValues
=
{username,userpass,usermail,usersite,usermsn}
;
OperateXmlByDataSet.UpdateXmlRow(ViewState[
"
filename
"
].ToString(),Columns,ColumnsValues,
"
userid
"
,userid);
}
ViewState["filename"]= Server.MapPath("..//XML//User.xml");
OperateXmlByDataSet的UpdateXmlRow方法:
UpdateXmlRow
#region
UpdateXmlRow
/**/
///
<summary>
///
更行符合条件的一条Xml记录
///
</summary>
///
<param name="strXmlPath">
XML文件路径
</param>
///
<param name="Columns">
列名数组
</param>
///
<param name="ColumnValue">
列值数组
</param>
///
<param name="strWhereColumnName">
条件列名
</param>
///
<param name="strWhereColumnValue">
条件列值
</param>
///
<returns></returns>
public
static
bool
UpdateXmlRow(
string
strXmlPath,
string
[] Columns,
string
[] ColumnValue,
string
strWhereColumnName,
string
strWhereColumnValue)
{
try
{
string
strXsdPath
=
strXmlPath.Substring(
0
,strXmlPath.IndexOf(
"
.
"
))
+
"
.xsd
"
;
DataSet ds
=
new
DataSet();
ds.ReadXml(GetXmlFullPath(strXmlPath));
//
先判断行数
if
(ds.Tables[
0
].Rows.Count
>
0
)
//
DataSet ds = new DataSet();
//
//
读xml架构,关系到列的数据类型
//
ds.ReadXmlSchema(GetXmlFullPath(strXsdPath));
//
ds.ReadXml(GetXmlFullPath(strXmlPath));
//
int count = ds.Tables[0].Rows.Count;
//
先判断行数
//
if(count > 0)
{
for
(
int
i
=
0
; i
<
ds.Tables[
0
].Rows.Count; i
++
)
{
//
如果当前记录为符合Where条件的记录
if
(ds.Tables[
0
].Rows[i][strWhereColumnName].ToString().Trim().Equals(strWhereColumnValue))
{
//
循环给找到行的各列赋新值
for
(
int
j
=
0
; j
<
Columns.Length; j
++
)
{
ds.Tables[
0
].Rows[i][Columns[j]]
=
ColumnValue[j];
}
//
更新DataSet
ds.AcceptChanges();
//
重新写入XML文件
ds.WriteXml(GetXmlFullPath(strXmlPath));
return
true
;
}
}
}
return
false
;
}
catch
(Exception)
{
return
false
;
}
}
#endregion
作者:
青羽
查看全文
相关阅读:
Extjs杂记录
Extjs获得组件值的方式
Extjs选中多行Grid提交
Extjs定时操作
Maven自动部署Tomcat错误排除
Eclipse下maven部署web项目到tomcat7(兼容tomcat8)
MyEclipse 2013安装后要做的几件事
从零开始学习SSH框架笔记之四 几个关键配置文件备忘(模板)
虚机,操作系统启动以后,卡住不动了,按F2,出现缺失文件的内容
chroot命令
原文地址:https://www.cnblogs.com/tenghoo/p/526016.html
最新文章
装饰器原理 再不会自杀
Flask 通关攻略大全
RSA加密
常用algorithm及其Python实现
CSS制作水平垂直居中对齐
清除数组中的特定数值
一个css小bug
javascript:;与javascript:void(0)的区别
JavaScript跨域总结与解决办法
未知宽度水平居中的几种方法
热门文章
一个简单的MVC模型实现
css bug 集2
css bug集1
r.js 配置文件 example.build.js 不完整注释
用9种办法解决 JS 闭包经典面试题之 for 循环取 i
extjs传递参数
extjs动态添加列
extjs中Store和grid的刷新问题
js小结(一)
extjs动态插入一列
Copyright © 2011-2022 走看看