科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件ASP.NET Web Service

ASP.NET Web Service

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

现在Internet正在不断地发展着,在互联网应用刚开始的时候,我们浏览的网页只是静态的,不可交互的。而现在随着技术的日益发展,将提供给网页浏览者一个可编程的Web 站点...

作者:天极新技术工作室 来源:yesky 2007年10月26日

关键字: Windows

  • 评论
  • 分享微博
  • 分享邮件
从客户端进行访问:

  除了允许开发者使用的创建Web Services的技术以外,Microsoft的.NET框架给客户端提供了一套访问并使用Web Services的精致且高深的工具和代码。由于Web Services是基于如简单对象访问协议SOAP(Simple Object Access Protocol)和HTTP这样的开放协议标准的,从而,我们就可以使用这种客户端技术使用非ASP.NET的Web Services。当然,这也需用高水平地合成ASP.NET Web Services和这种客户端技术。

  SDK中有一个工具叫做WebServiceUtil.exe,我们可以使用它来下载一个Web Services的SDL描述语言,并创建表达这个Service的代理类。比如,当我们输入以下命令,就可以创建一个叫做HelloWorld.cs的代理类:

   WebServiceUtil /c:proxy /pa:http://someDomain.com/someFolder/HelloWorld.asmx?SDL 

  这个类看起来与前面创建的类非常相似。它包含一个方法SayHelloWorld,该方法返回一个字符串。将这个代理类编译到一个应用程序中,然后调用这个代理类的方法,结果就是:通过HTTP,这个代理类包装SOAP请求,然后接收SOAP编码响应,最后汇集成为一个字符串。

  请看关于Web Service的一个客户端例程:


  客户端访问的文件:clint.aspx,内容如下:


<%@ Import Namespace="DataTypesService" %>

<html>
<style>
div
{
font: 8pt verdana;
background-color:cccccc;
border-color:black;
border-width:1;
border-style:solid;
padding:10,10,10,10;
}


</style>

<script language="VB" runat="server">

Public Sub Page_Load(Sender As Object, E As EventArgs)

Dim D As DataTypes = New DataTypes()
Message1.InnerHtml = D.SayHello()
Message1.InnerHtml = Message1.InnerHtml & D.SayHelloName("Bob")
Message3.InnerHtml = Message3.InnerHtml & D.GetMode()


Dim MyIntArray As Integer() = D.GetIntArray()
Dim MyString As String = "Contents of the Array:<BR>"


For I = 0 To MyIntArray.Length - 1
MyString = MyString & MyIntArray(I) & "<BR>"
Next


Message2.InnerHtml = Message2.InnerHtml & MyString

Dim MyOrder As Order = D.GetOrder()
Message4.InnerHtml = Message4.InnerHtml & "<BR>OrderID: " & MyOrder.OrderID
Message4.InnerHtml = Message4.InnerHtml & "<BR>Price: " & MyOrder.Price


Dim MyOrders As Order() = D.GetOrders()
Message5.InnerHtml = Message5.InnerHtml & "<BR>OrderID: " & MyOrders(0).OrderID
Message5.InnerHtml = Message5.InnerHtml & "<BR>Price: " & MyOrders(0).Price

End Sub


</script>

<body style="font: 10pt verdana">
<H4>Using DataTypes with Web Services</H4>


<h5>Methods that return a Primitive (String): </h5>
<div id="Message1" runat="server"/>


<h5>Methods that return an Array of Primitives (Integers): </h5>
<div id="Message2" runat="server"/>


<h5>Method that returns an Enum: </h5>
<div id="Message3" runat="server"/>

<h5>Method that returns a Class/Struct: </h5>
<div id="Message4" runat="server"/>


<h5>Method that returns an array of Classes/Structs: </h5>
<div id="Message5" runat="server"/>


</body>
</html>


  在客户端程序中,我们使用<%@ Import Namespace="DataTypesService" %>来引入DataTypesService这个我们自定义的名字空间。然后在程序中只是调用了DataTypesService中的方法。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章