最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
一个通过DataSet操作XML的类
时间:2022-06-30 10:42:30 编辑:袖梨 来源:一聚教程网
这段时间写的项目每次都要用到XML保存一些配置,而每次操作XML都觉得挺麻烦,没有数据库那么顺手。后来发现用DataSet操作XML很方便,而且灵活性比较好,于是写了一个操作XML的类,用来应付一般的XML操作(源码下载附件)。
1 基本思路
其实用DataSet操作XML,归根到底就是对DataSet里的表格,行,列等进行操作,然后用DataSet里的东西重新写到XML中,从而实现编辑XML的目的。如果再配合上.xsd文件的话,那效果更佳。
2 程序详解
(1) XML文件内容
本类操作的XML和生成的XML格式是一样的,如下(点击查看代码1附件):(如出现中文乱码,请在浏览器查看选项的编码中选择"简体中文")
然后点击XML文件右下角的“数据”,即可看到熟悉的表格形式,在表格的任意位置上单击右键选择“创建架构”,将会生成一个.xsd文件,该文件用来定义XML各列的类型。其内容如下(点击查看代码2附件):
注意:如果想像数据库一样有一个自动增长的ID字段,则可以这样操作:
首先在XML中添加一个元素,这样生成.xsd的时候,就会有一个ID段,在.xsd中选中ID这一列,在右边的属性中,将“AutoIncrementSeed”和“AutoIncrementStep”分别设置为1,这样ID就会从1开始以步长为1自动增长。
以上代码如果看不懂并不要紧,因为我们可以通过DataSet来生成这种格式的内容。接下来将开始操作XML。
(2) 处理XML文件路径
这里主要是对传入的XML路径进行处理,如果传入的是相对路径,则返回完整路径,如果传入的是完整路径,则不做处理直接返回。方法如下:
#region GetXmlFullPath
///
/// 返回完整路径
///
/// Xml的路径
///
public static string GetXmlFullPath(string strPath)
{
//如果路径中含有:符号,则认定为传入的是完整路径
if(strPath.IndexOf(":") > 0)
{
return strPath;
}
else
{
//返回完整路径
return System.Web.HttpContext.Current.Server.MapPath(strPath);
}
}
#endregion
1 基本思路
其实用DataSet操作XML,归根到底就是对DataSet里的表格,行,列等进行操作,然后用DataSet里的东西重新写到XML中,从而实现编辑XML的目的。如果再配合上.xsd文件的话,那效果更佳。
2 程序详解
(1) XML文件内容
本类操作的XML和生成的XML格式是一样的,如下(点击查看代码1附件):(如出现中文乱码,请在浏览器查看选项的编码中选择"简体中文")
然后点击XML文件右下角的“数据”,即可看到熟悉的表格形式,在表格的任意位置上单击右键选择“创建架构”,将会生成一个.xsd文件,该文件用来定义XML各列的类型。其内容如下(点击查看代码2附件):
注意:如果想像数据库一样有一个自动增长的ID字段,则可以这样操作:
首先在XML中添加一个元素,这样生成.xsd的时候,就会有一个ID段,在.xsd中选中ID这一列,在右边的属性中,将“AutoIncrementSeed”和“AutoIncrementStep”分别设置为1,这样ID就会从1开始以步长为1自动增长。
以上代码如果看不懂并不要紧,因为我们可以通过DataSet来生成这种格式的内容。接下来将开始操作XML。
(2) 处理XML文件路径
这里主要是对传入的XML路径进行处理,如果传入的是相对路径,则返回完整路径,如果传入的是完整路径,则不做处理直接返回。方法如下:
#region GetXmlFullPath
///
/// 返回完整路径
///
/// Xml的路径
///
public static string GetXmlFullPath(string strPath)
{
//如果路径中含有:符号,则认定为传入的是完整路径
if(strPath.IndexOf(":") > 0)
{
return strPath;
}
else
{
//返回完整路径
return System.Web.HttpContext.Current.Server.MapPath(strPath);
}
}
#endregion
相关文章
- 黑神话悟空1.0.12.16581版本更新公告 12-27
- 光遇12.27红石碎片在哪里 12-27
- 无限暖暖翩翩愿飞去怎么样 无限暖暖翩翩愿飞去能力套装介绍 12-27
- 无限暖暖流星绚烂时怎么样 无限暖暖流星绚烂时套装介绍 12-27
- 无限暖暖1.1版本流星季怎么玩 无限暖暖1.1流星季版本活动介绍 12-27
- 第五人格孽蜥耶梦加得怎么样 第五人格孽蜥耶梦加得稀世时装介绍 12-27