asp.netLinqtoXml学习笔记
2023-06-13 09:14:16 时间
加上之前学习过LinqtoEntity,因此学习起来也比较随心应手。
以下是项目中某个底层的代码,记下做个备忘,如果能给新手学习LinqtoXml带来帮助,那就再好不过了
XML文件的格式:
复制代码代码如下:
以下是项目中某个底层的代码,记下做个备忘,如果能给新手学习LinqtoXml带来帮助,那就再好不过了
XML文件的格式:
<?xmlversion="1.0"encoding="utf-8"?>
<configuration>
<OPsystemConfig>
<MemberCenter>
<DomainName>DomainName</DomainName>
<ProtocolName>ProtocolName</ProtocolName>
<APIKey>APIKey</APIKey>
<AESKey>AESKey</AESKey>
<AESVI>AESVI</AESVI>
</MemberCenter>
<ChildSystems>
<ChildSystem>
<Name>Content</Name>
<ControllerName>ContentManager</ControllerName>
</ChildSystem>
<ChildSystem>
<Name>Image</Name>
<ControllerName>ImageManager</ControllerName>
</ChildSystem>
<ChildSystem>
<Name>Comment</Name>
<ControllerName>CommentManager</ControllerName>
</ChildSystem>
<ChildSystem>
<Name>Vote</Name>
<ControllerName>VoteManager</ControllerName>
</ChildSystem>
</ChildSystems>
</OPsystemConfig>
</configuration>
XML增,删,改,查
privatestringdocName=string.Empty;//配置文件路径
#regionISystemModuleConfigService成员
///<summary>
///添加
///</summary>
///<paramname="name"></param>
///<paramname="controllerName"></param>
///<returns></returns>
publicboolAdd(stringname,stringcontrollerName)
{
XDocumentxDoc=Load(docName);
if(IsExist(name))
{
xDoc.Element("configuration").Element("OPsystemConfig").Element("ChildSystems").Add(newXElement("ChildSystem",
newXElement("Name",name),
newXElement("ControllerName",controllerName)));
xDoc.Save(docName);
returntrue;
}
returnfalse;
}
///<summary>
///修改
///</summary>
///<paramname="name"></param>
///<paramname="controllerName"></param>
///<returns></returns>
publicboolModify(stringname,stringcontrollerName)
{
XDocumentxDoc=Load(docName);
if(!IsExist(name))
{
varquery=fromOpsysteminxDoc.Descendants("ChildSystem")
whereOpsystem.Element("Name").Value==name
selectOpsystem;
foreach(XElementiteminquery)
{
item.Element("ControllerName").Value=controllerName;
}
xDoc.Save(docName);
returntrue;
}
returnfalse;
}
///<summary>
///删除
///</summary>
///<paramname="name"></param>
///<returns></returns>
publicboolRemove(stringname)
{
XDocumentxDoc=Load(docName);
if(!IsExist(name))
{
varquery=fromOpsysteminxDoc.Descendants("ChildSystem")
whereOpsystem.Element("Name").Value==name
selectOpsystem;
query.Remove();
xDoc.Save(docName);
returntrue;
}
returnfalse;
}
///<summary>
///获得列表
///</summary>
///<returns></returns>
publicIList<SystemModuleConfig>GetList()
{
XDocumentxDoc=Load(docName);
List<SystemModuleConfig>list=newList<SystemModuleConfig>();
varquery=fromOpsysteminxDoc.Descendants("ChildSystem")
selectnew
{
Key=Opsystem.Element("Name").Value,
Value=Opsystem.Element("ControllerName").Value
};
foreach(variteminquery)
{
SystemModuleConfigconfig=newSystemModuleConfig();
config.Name=item.Key;
config.ControllerName=item.Value;
list.Add(config);
}
returnlist;
}
///<summary>
///获得一条ChildSystem数据
///</summary>
///<paramname="name"></param>
///<returns></returns>
publicSystemModuleConfigGetModel(stringname)
{
XDocumentxDoc=Load(docName);
SystemModuleConfigmodel=newSystemModuleConfig();
varquery=fromOpsysteminxDoc.Descendants("ChildSystem")
whereOpsystem.Element("Name").Value==name
selectnew
{
Name=Opsystem.Element("Name").Value,
ControllerName=Opsystem.Element("ControllerName").Value
};
foreach(variteminquery)
{
model.Name=item.Name;
model.ControllerName=item.ControllerName;
}
returnmodel;
}
///<summary>
///加载Config文件
///</summary>
///<paramname="path"></param>
///<returns></returns>
publicXDocumentLoad(stringpath)
{
docName=path;
FileInfofile=newFileInfo(docName);
file.IsReadOnly=false;
returnXDocument.Load(docName);
}
///<summary>
///验证Name=name的ChildSystem数据是否存在
///</summary>
///<paramname="name"></param>
///<returns></returns>
privateboolIsExist(stringname)
{
XDocumentxDoc=Load(docName);
varquery=fromOpsysteminxDoc.Descendants("ChildSystem")
whereOpsystem.Element("Name").Value==name
selectnew
{
Name=Opsystem.Element("Name").Value
};
if(query.Count()==0)
{
returntrue;
}
returnfalse;
}
相关文章
- .net搭建ASP.NET应用程序在Linux系统上(linux搭建asp)
- ASP操作Oracle数据库(asp链接oracle)
- asp.net的web服务MSSQL检测ASP.NET的Web服务——利用它构建更棒的站点(mssql检测基于)
- 快速搭建ASP应用MySQL配置指南(asp配置mysql)
- ASP连接MySQL编码入门实战(asp链接mysql代码)
- 提升ASP连接MySQL性能优化快人一步(asp连接mysql性能)
- ASP读取MySQL时间的方式(asp读取mysql时间)
- ASP连接MySQL从初学者到专家(asp引用mysql)
- 灵活运用ASP与MySQL连接的妙用(asp与mysql连接)
- ASP搭配MySQL实现完美源代码(asp mysql源代码)
- Oracle ASP程序助你轻松下载(oracle asp下载)
- 用ASP+XML打造留言本
- 在ASP.net中保存/取出图片入/从SQL数据库
- 充分利用ASP.NET的三种缓存提高站点性能的注意方法
- ASP调用dll及封装dll实例
- ASP日期的加减运算实现代码
- asp.net删除文件session丢失
- 那些年,我还在学习asp.net(二)学习笔记
- asp.net数据绑定的实例代码
- ASP.NET中上传并读取Excel文件数据示例