当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > XML反串行化Namespace不统一而引起的错误

ASP.NET
asp.net(c#)网页跳转七种方法小结
完美解决在ModalPopupExtender中使用CalendarExtender时被层遮挡的问题
ASP.NET、SharePoint中另存文件的长文件名被截断的原因及解决办法
查看Json输出的*最方便*的方法 (转)
asp.net 代码隐藏的编码模型
ajaxpro.dll 控件实现异步刷新页面
asp.net DbProviderFactory的使用-示例
一个简单的asp.net 单点登录实现
jQuery+Ajax用户登录功能的实现
asp.net 弹出对话框返回多个值
.NET 中英文混合验证码实现代码
一个完整的ASP.NET 2.0 URL重写方案[翻译]
asp.net关于onpropertychange和oninput事件实现代码
asp.net gridview指定某一列滚动
Equals和==的区别 公共变量和属性的区别小结
asp.net 合并GridView中某列相同信息的行(单元格)
ASP.NET(C#) 定时执行一段代码
asp.net 预防SQL注入攻击之我见
asp.net下将Excel转成XML档的实现代码
asp.net url分页类代码

ASP.NET 中的 XML反串行化Namespace不统一而引起的错误


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 77 ::
收藏到网摘: n/a


在反串行化 XML 的时候,如果 Namespace 不统一,就会引起错误。
比如需要反串行化这个 XML :
10 just test
在程序里需要先声明一个 Class :
Public class Test Public A As Integer Public B As StringEnd class
然后:
Dim serializer As New XmlSerializer(GetType(Root))t = CType(serializer.Deserialize(s), Root)
其中 t 是 Test 的实例,而 s 是 XML 的 Stream。
正常的反串行化应该是这个过程的,但是会得到一个错误。因为 serializer 不知道 XML 的 Namespace,所以需要指定 XML 的 Namespace,方法就是:
_Public class Test Public A As Integer Public B As StringEnd class
这样,XML 的 Namespace 就统一了,也就可以正常的反串行化了。