XMLDocument 加载XML总是报错
//在C#代码里解析XML出错
string xmlmsg="<?xml version=\"1.0\" ?><SPImportUserConfig spid=\"01000001\" createdate=\"2006-9-14\"><Columns><column name=\"col1\" describe=\"用户名\" type=\"varchar(300)\"/><column name=\"col2\" describe=\"地址\" type=\"varchar(300)\"/><column name=\"col3\" describe=\"电话\" type=\"varchar(300)\"/><column name=\"col4\" describe=\"用户等级\" type=\"varchar(300)\"/></Columns><ColumnsMapping><column name=\"col1\" mappedcolname=\"username\"/><column name=\"col2\" mappedcolname=\"addressdetail\"/><column name=\"col3\" mappedcolname=\"mobile\"/></ColumnsMapping><IndexColumn><column name=\"col3\"/></IndexColumn><ServiceColumn name=\"col4\"><relationship typename=\"a \"packageid=\"1\" /><relationship typename=\"b \"packageid=\"2\" /></ServiceColumn></SPImportUserConfig>";//在一行里
//定义XmlDocument,加载xmlmsg
XmlDocument xmldoc=new XmlDocument();
try
{
xmldoc.LoadXml(xmlmsg);
}
catch(Exception e)
{
//异常处理
}
总是报错:
这是一个意外的标记。标记应为“NAME”。 行 1,位置 611。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Xml.XmlException: 这是一个意外的标记。标记应为“NAME”。 行 1,位置 611。
如果把xmlmsg中的<ServiceColumn .>..</ServiceColumn>的子节点去掉,就不会报错
也就是说这中间的XML格式不对,但是找不出来,把xmlmsg中的转意符"\"去掉,保存为文件,用IE浏览器也可以显示 那错误在哪里呢?请各位帮看看