首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Dotnet频道
中国IT教育
Google
首页 ASP.NET  C#  XML/WebService ADO.NET VC.NET VB.NET .NET 资讯动态 专题 RSS订阅 讨论 下载
您现在的位置: 中国IT实验室 >> Dotnet >> XMLWeb >> 正文

XLINQ : XML字面量和XML后期绑定

  XML 作为一种通用的,跨平台的数据交换格式,在程序界是公认的事实;而 .Net Framework 以前的版本中麻烦的 XML 操作,常常令程序员心生不快。记得以前试图生成一个 XML 文件,无非是两种模式:用 StringBuilder 拼接 XML 字符串,或者是用 XMLDocument / XMLWriter 进行 DOM 操作。StringBuilder 是有足够的速度,但是没有稳定性的保障,需要多次过滤以保护 XML 文件的完整性。而使用 MSXML 的包装 System.Xml 进行操作,又未免太麻烦了些。

  XML 字面量功能是 Visual Basic 9 为解放程序员劳力作出的一项非常大的改进,它可让程序员直接在代码中嵌入 XML 进行生成操作。借助编译器的力量,XML 字面量调用 System.Xml.Linq 进行 XML 的动态生成。在 C# 中,虽然同样可以调用这个命名空间下的类进行生成,但是远没有 Visual Basic 的模式轻松,省力。举一个简单的范例,用于动态生成一个 XML 文档:

  旧的 String Builder 模式:

Imports System.Text
Public Function BuildXMLFromStringBuilder()
Function BuildXMLFromStringBuilder(Name As String, Age As Integer) As String Dim XMLBuilder As New StringBuilder With XMLBuilder .AppendLine("<Person>") .Append("<Name>") .Append(Name) .AppendLine("</Name>") .Append("<Age>") .Append(Age) .AppendLine("</Age>") .AppendLine("</Person>") End With Return XMLBuilder.ToString() End Function

  旧的 XML DOM 模式:

Public Function BuildXMLFromXmlDom()
Function BuildXMLFromXmlDom(ByVal Name As String, ByVal Age As Integer)
As String Dim XMLDocument As New XmlDocument Dim RootElement As XmlElement = XMLDocument.CreateElement("Person") Dim NameElement As XmlElement = XMLDocument.CreateElement("Name") Dim AgeElement As XmlElement = XMLDocument.CreateElement("Age") With RootElement .AppendChild(NameElement) .AppendChild(AgeElement) End With With NameElement .Value = Name End With With AgeElement .Value = CStr(Age) End With XMLDocument.AppendChild(RootElement) Return XMLDocument.ToString() End Function

[1] [2] 下一页

【责编:John】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 社区讨论
 博客论点
 Dotnet频道相关导航