VB 泛型 T 应用
.NET框架提供了System.Xml.Serialization.XmlSerializer类型,为将对象序列化为XML或将XML序列化为对象提供了很大支持
先定义一个InspectionType类
<Xml.Serialization.XmlRoot("TownInspectionType")> _ 'TownInspectionType是root 节点,也可以是 xml 某个节点。
Public Class InspectionType
Public FirstName As String
Public LastName As String
End Class
要解析的xml 例子
<?xml version="1.0"?>
<TownInspectionType xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<FirstName>John</FirstName>
<LastName>Evans</LastName>
</TownInspectionType>
OR
<TownInspectionType>
<FirstName>John</FirstName>
<LastName>Evans</LastName>
</TownInspectionType>
下面是定义好的泛型,其中xml 是需要反序列化的节点,T是Model的类型,例子中是TownInspectionType,它包括了两个字段。
Public Class DeSerializer(Of T)
Public Function DeserializeXML(ByVal xml As String) As T
Dim ser As New XmlSerializer(GetType(T))
Using ms As New MemoryStream(Encoding.Default.GetBytes(xml))
Using r As New StreamReader(ms)
Dim obj As T = DirectCast(ser.Deserialize(r), T)
Return obj
End Using
End Using
End Function
End Class
下面是调用:
Dim serializer = New DeSerializer(Of InspectionType)
Dim TownInspectionTypeModel As InspectionType= serializer.DeserializeXML(townInspectionTypesChildNode.InterXml)
这里只是给出了 反序列化单一的Model 如果xml 是:
<TownInspectionTypes>
<TownInspectionType>
<FirstName>John</FirstName>
<LastName>Evans</LastName>
</TownInspectionType>
<TownInspectionType>
<FirstName>lili</FirstName>
<LastName>denvy</LastName>
</TownInspectionType>
</TownInspectionTypes>
能否把TownInspectionType 转化成一个List(of TownInspectionType)形式呢? 欢迎抛砖!
转载于:https://www.cnblogs.com/wwzhang/p/5130767.html
VB 泛型 T 应用相关推荐
- VB.NET2005通过泛型实现的KMP查找算法
增强型的模式匹配算法,KMP查找算法VB.NET 2005泛型实现.也不知道用的对不对,但是个人感觉好像是对的.不过做测试的时候发现如果是字符串(字符数组)的匹配,用KMP算法比.NET自己的Stri ...
- C#泛型集合之Dictionaryk, v使用技巧
1.要使用Dictionary集合,需要导入C#泛型命名空间 System.Collections.Generic(程序集:mscorlib) 2.描述 1).从一组键(Key)到一组值(Value) ...
- 结合泛型与模板的STL.NET
开始之前,先来看一个笑话,当问一个C++程序员怎样完成一个给定的任务时,他(她)可能会提供一打或更多的潜在解决方案列表,但又会极其详细地标出每种方案的问题之处,让你不知所措,难以选择.而Visual ...
- C#中的集合、哈希表、泛型集合、字典
集合ArrayList 集合:集合可以看做是数组,可以将其看成"长度可变,具有很多方法的数组".使用ArrayList,首先需要导入命名空间using.system.collect ...
- 值类型、引用类型和泛型的前世今生
值类型.引用类型和泛型 多语言 咱们先不说主题,先说说CLR支持多语言. .net有个非常强大的特点,那就是跨语言,支持很多语言,比如C#.J#等.先来个图看一看 C# J# VB 等等等
- 泛型技巧系列:类型字典和Type Traits
注意:未经许可,本系列禁止转载. 本文所介绍的技巧,是我在研究泛型开发不久就发现并成功运用的技巧.这个技巧是突破.NET泛型限制,达到"看上去很美"境界的法宝.当然本方法也存在重大 ...
- 集合Collection以及泛型
2019独角兽企业重金招聘Python工程师标准>>> 添加元素boolean add(E e):集合元素数量int size():判断集合是否为空boolean isEmpty() ...
- .NET 4.0中的泛型协变和反变
随Visual Studio 2010 CTP亮相的C#4和VB10,虽然在支持语言新特性方面走了相当不一样的两条路:C#着重增加后期绑定和与动态语言相容的若干特性,VB10着重简化语言和提高抽象能力 ...
- 泛型与继承的关系,通配符
1 若类A是类B的子类,那么List<A>就不是List<B>的子接口 2 通配符:List[A],List[B]...都是List<?>的子类 extends A ...
最新文章
- DeepFaceDrawing: 使用草图生成人脸图像
- lnmp php fpm 默认,LNMP(PHP-FPM)
- 使用SSH执行远程登录
- python2clock_控制fps的时钟Clock类源码
- mysql表级锁和行级锁_MySQL表级锁和行级锁
- 阿里云ddns解决动态IP问题
- Windows程序设计之基本介绍
- 基于PHP的新闻管理系统(基础版)
- vc2008不安装vcredist发布程序
- STM32_OLED显示
- 案例|工业物联网解决方案•污水处理厂智能监控运维云平台
- minecraft服务器stats文件夹,[教程]Minecraft 文件夹目录索引及各部分作用
- 向量和矩阵求导(运用迹性质求导)
- Functional ALV系列 (05) - ALV 作为数据编辑界面
- 未来的主流NewIT,埃森哲最佳实践
- 各种素材网站大全【全部倾倒,福利倒计时-JS,HTML,游戏素材,UI,图片素材等
- GPT模型成功的背后用到了哪些以数据为中心的人工智能技术?
- 基于NVIDIA Xavier NX(ubuntu20.04)的Optitrack视觉定位 PX4+ros noetic(实物运行记录)
- 库迪咖啡抖音团购对接项目总结
- Android摄像头测量尺(Advanced Ruler Pro)使用方法
热门文章
- Oracle索引状态查询与索引重建
- MYSQL8.0 排序查询报错 this is incompatible with sql_mode=only_full_group_by
- MVC项目实践,在三层架构下实现SportsStore-06,实现购物车
- Vue method与computed的区别
- Amazon WorkSpaces现支持Amazon Linux 2 Desktop
- 香蕉派 Banana pi BPI-M1+ 双核开源单板计算机. 板载WIFI
- 使用SQL Storage Compress压缩SQL Server 数据库文件
- MS CRM 4中,添加营销列表成员查找列
- 很高兴,自己申请到了一个.net的blog
- X86汇编语言从实模式到保护模式12:存储器的保护