由于xml中引用了外部dtd定义的实体,
XmlSerializer serializer = new XmlSerializer(type);
return serializer.Deserialize(sr);
时会报文档(2,5901)出错
xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Test SYSTEM "entities.dtd">
<Test>
&ge
</Test>
entities.dtd文件
<!ENTITY ge "≥" >
如果把xml文件改为
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Test SYSTEM [<!ENTITY ge "≥" >]>
<Test>
&ge
</Test>
这样是可以的。
所以说我认为似乎是XmlSerializer不会主动是调用外部引用的dtd文件。
欢迎回复讨论。谢谢
XmlSerializer serializer = new XmlSerializer(type);
return serializer.Deserialize(sr);
时会报文档(2,5901)出错
xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Test SYSTEM "entities.dtd">
<Test>
&ge
</Test>
entities.dtd文件
<!ENTITY ge "≥" >
如果把xml文件改为
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Test SYSTEM [<!ENTITY ge "≥" >]>
<Test>
&ge
</Test>
这样是可以的。
所以说我认为似乎是XmlSerializer不会主动是调用外部引用的dtd文件。
欢迎回复讨论。谢谢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货