xsd转换成xml文件的问题,简单问题,高分相送

coolbug2000 2005-08-24 10:34:26

XmlDocument doc=new XmlDocument();
doc.Load(@"e:\newfile\t.xsd");
XmlNodeList list=doc.DocumentElement.ChildNodes;
foreach(XmlNode node in list)
{
if(CheckNode(node)==true)
{do....}

}

public static bool CheckNode(XmlNode node)
{
bool result=false;
if(node.HasChildNodes)
{
foreach( XmlNode nodeC in node.ChildNodes)
{
if(result==false)
{
if(nodeC.Name=="xs:element")
{
result=true;
}
else
{
CheckNode(nodeC);
}
}
}
}
return result;
}

问题如下 :

1.为什么每次 检测到 <xs:element> 标记时,返回为result=true后,还去执行foreach里的循环?循环后result又为false了 为什么?(为true时不执行checknode(nodec)递归函数。 如何跳出foreach的循环?
2.如何写一个将xsd文件转换成xml文件? 即 比如将xml通过xsd.exe转换成xsd文件后,如何再将之再转回来?程序如何实现?
...全文
177 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolbug2000 2005-08-24
  • 打赏
  • 举报
回复
break 没有用的,还会进行下一次上个节点的foreach循环。
humin1906 2005-08-24
  • 打赏
  • 举报
回复
foreach(XmlNode node in list)
{
if(CheckNode(node)==true)
{do....}
else
break; //跳出循环

}

coolbug2000 2005-08-24
  • 打赏
  • 举报
回复
又是自己搞定.
coolbug2000 2005-08-24
  • 打赏
  • 举报
回复
又是自己搞定,呵呵

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧