web游戏源代码:使用 SOAP Toolkit 2.0 将现有代码作为 Web 服务来源: 发布时间:星期四, 2009年2月12日 浏览:361次 评论:0
使用 SOAP Toolkit 2.0 将现有代码作为 Web 服务提供 使用 .NET 建立分布式应用 ![]() Steve Kirk 和 Priya Dhawan Microsoft Developer Network 摘要:本文介绍了使用 Microsoft SOAP Toolkit 版本 2.0 将现有 Microsoft Visual Basic 6.0 代码作为 Web 服务提供时所进行 ![]() ![]() 目录 介绍 现有代码提供 ![]() ADO 2x Command 对象 ADO 2x Record ![]() Stream 对象 XMLDOM 对象 整理总结 介绍 Microsoft®SOAP Toolkit 版本 2.0 简化了将现有代码作为 Web 服务提供和使用 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 评估现有代码是否适合于作为 Web 服务提供时 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 现有代码提供 ![]() 要介绍现有代码传递 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ADO 2x Command 对象 ADO2x Record ![]() Stream 对象 XMLDOM 对象 ADO 2x Command 对象 直接访问数据库 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 读数据 以下举例中 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() With SoapSerializer `转换 CommandType .startElement \"CommandType\" .writeString Cmd.CommandType .endElement `转换 CommandText .startElement \"CommandText\" cmdText = Cmd.CommandText cmdText = Left(Cmd.CommandText, Len(cmdText) - 8) cmdText = Right(cmdText, Len(cmdText) - 7) .writeString cmdText .endElement `转换 Parameters 集合 .startElement \"Parameters\" For i = 0 To oCmd.Parameters.Count - 1 .startElement Right(oCmd.Parameters(i).Name, _ Len(oCmd.Parameters(i).Name) - 1) .startElement \"Direction\" .writeString oCmd.Parameters(i).Direction .endElement .startElement \"Type\" .writeString oCmd.Parameters(i).Type .endElement .startElement \"Size\" .writeString oCmd.Parameters(i).Size .endElement .startElement \"Value\" .writeString oCmd.Parameters(i).Value .endElement .endElement Next .endElement End With 写数据 将数据作为 Command 对象 ![]() ![]() ![]() ![]() ![]() ![]() ![]() 以下举例中 ![]() ![]() ![]() ![]() Dim Cmd As ADODB.Command Dim Param As ADODB.Parameter \' pNode 是包含客户提交 ![]() ![]() \' 例子化 ![]() Set Cmd = New ADODB.Command With Cmd \' 应用 CommandType 和 CommandText .CommandType = _ CInt(pNode.selectSingleNode(\"CommandType\").nodeTypedValue) .CommandText = pNode.selectSingleNode(\"CommandText\").nodeTypedValue \' 填充 Parameters 集合 Set nodeParent = pNode.selectSingleNode(\"Parameters\") For i = 0 To nodeParent.childNodes.length - 1 Set nodeParameter = nodeParent.childNodes(i) Set Param = New ADODB.Parameter With Param .Name = \"@\" + nodeParameter.nodeName .Direction = _ nodeParameter.selectSingleNode(\"Direction\").nodeTypedValue .Type = nodeParameter.selectSingleNode(\"Type\").nodeTypedValue .Size = nodeParameter.selectSingleNode(\"Size\").nodeTypedValue .Value = factory.getMapper(enXSD ![]() Nothing).Read(nodeParameter.selectSingleNode(\"Value\"), _ bstrEncoding, encodingMode, lFlags) End With .Parameters.Append oParam Next End With ADO 2x Record ![]() ADO 2x 断开连接 ![]() ![]() ![]() ![]() ![]() ![]() 读数据 本举例中 ![]() ![]() ![]() ![]() ![]() ![]() Dim Doc As MSXML2.DOMDocument Set Doc = New MSXML2.DOMDocument \' 将记录集数据写入 XMLDOM rs.Save oDoc, adPersistXML \' 将 XML 传递到 SOAP Toolkit Serializer SoapSerializer.writeXML Doc.xml 写数据 以下举例中 ![]() ![]() ![]() ![]() Dim rs As ADODB.Record ![]() Dim Doc As MSXML2.DOMDocument Set rs = New ADODB.Record ![]() Set Doc = New MSXML2.DOMDocument \' 将 XML 载入 XMLDOMDocument Doc.loadXML pNode.xml \' 使用来自 XMLDOMDocument ![]() rs.Open Doc Stream 对象 流提供了 ![]() ![]() ![]() ![]() ![]() ![]() ![]() 读数据 以下举例中 ![]() ![]() ![]() ![]() Dim inStream As ADODB.Stream \' pvar 包含现有代码返回 ![]() Set inStream = pvar \' 将 XML 数据从流传递到 SOAP Serializer SoapSerializer.writeString inStream.ReadText XMLDOM 对象 XMLDOM 对象是 ![]() ![]() ![]() ![]() ![]() ![]() 读数据 以下举例中 ![]() ![]() ![]() ![]() `pvar 包含 XMLDOMDocument pSoapSerializer.writeXML pvar.xml 写数据 以下举例中 ![]() ![]() ![]() Set oDoc = New MSXML2.DOMDocument \' 将 IXMLDOMNode XML 载入 DOMDocument 对象 `pnode 包含 IXMLDOMNode 对象 oDoc.loadXML pNode.childNodes(0).xml 整理总结 本文及附带 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 这些解决方案 ![]() ![]() ![]() ![]() ![]() ![]() ![]() 评估现有代码是否适合作为 Web 服务时 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 0
相关文章读者评论发表评论 |
|