当前位置: 首页 > 编程语言 > C#

如何删除XElement的CDATA标签?分享

时间:2023-04-10 11:50:24 C#

如何去除XElement的CDATA标签?我有一些代码接受一些XML,并且可能有CDATA标记元素。将标志传递给方法,说明CDATA标记是否应存在,如果标志为假,则应删除CDATA标记(如果存在),如何在不解析query.Value的情况下执行此操作?privatestaticvoidCDataTagUtility(XmlDocumentcatalog,XElementnewData,booladdCdataTag){XElementquery=newData.Element("Query").Element("CommandText");如果(addCdataTag){XmlCDataSectionencapsulatedQuery=catalog.CreateCDataSection(query.Value);尝试{query.SetValue(encapsulatedQuery.OuterXml);}catch(ArgumentExceptionexc){/*由于CDATA标签已经存在而抛出-忽略*/}}else//检查cdata标签-如果存在则移除{//如何移除CDATA封装标签???试试这个:以上是C#学习教程:如何去掉XElement的CDATA标签?如果分享的内容对你有用,需要进一步了解C#学习教程,希望你多多关注—staticvoidRemoveCdata(XmlNoderoot){foreach(XmlNodeninroot.ChildNodes){if(n.NodeType==XmlNodeType.CDATA)root.RemoveChild(n);elseif(n.NodeType==XmlNodeType.Element)RemoveCdata(n);}}...RemoveCdata(查询);本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处: