使用&符号使用XmlSerializer()反序列化XML
当XML具有“Lord&Hogan”等数据时,以下代码会中断。 有什么建议? 谢谢,肯
private T GetResponse(String apiObject, String query) { //Deserialize XML into the type specified. HttpWebRequest request = (HttpWebRequest)WebRequest.Create(BuildRequestUri(apiObject, query)); using (HttpWebResponse resp = (HttpWebResponse)request.GetResponse()) { try { XmlSerializer ser = new XmlSerializer(typeof(T)); return (T)ser.Deserialize(resp.GetResponseStream()); } catch (Exception e) { error = e.InnerException.ToString(); return default(T); } } }
从这里 :
XML标准不允许XML标记内的文字符号,并且任何XML解析器都无法解析此类文档。
StackOverflow上的其他类似问题:
你应该对像“Lord&Hogan”这样的数据进行XML编码。 它应该像这样编码:
"Lord & Hogan"
&
xml应替换为&
否则它是无效的字符。
这是可以用来替换所有不允许的字符的函数: https ://msdn.microsoft.com/en-us/library/system.security.securityelement.escape( v= vs.110).aspx
上述就是C#学习教程:使用&符号使用XmlSerializer()反序列化XML分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1039080.html