怎样创建.NET Web Service(2)

华山论吃喝

华山论吃喝

2016-01-29 19:34

怎样创建.NET Web Service(2),怎样创建.NET Web Service(2)
      
    创建Web Service
  
    我将用c#创建一个Web Service 叫SecurityWebService。一个Web Service文件的扩展名是:.asmx(就象asp.net的文件扩展名.aspx那样),文件的第一行是:
  
  <%@ WebService Language="C#" class="SecurityWebService" %>
  
    这个语句的含义是:告诉编译器运行Web Service模式,还有c#类名。我们还需要访问Web Service名字空间,这也是引用系统名字空间的一次好实践。
  
  using System;
  using System.Web.Services;
  
    SecurityWebService 应该继承了Web Service类的功能,因此我们有必要加入下面这行代码
  
  public class SecurityWebService : WebService
  
    现在我们使用面向对象的编程技巧创建一个类,c#的类与c++和java非常相似,用C#建一个类件象去公园散步那样简单,而且不需要任何技巧。
  
    C#的基本数据类型设计的非常聪明,因此,如果我们返回"int," "float," 或者 "string" ,那么将自动将他们转变成标准Xml输出。不幸的是,在大多数例子中我们需要将获得的数据集合看成一个单一的实体(single entity)。现在我们举一个例子。
  
    我们的 SecurityWebService 股票报价系统需要用户输入股票代码,并且还将返回完整的公司名和现行股票价格,所以对一只股票而言我们有三个信息块。
  
    1、公司代码(string)
  
    2、公司名(string)
  
    3、价格(double)
  
    当我们提交股票时,我们需要提取所有三种数据,有几种方法来完成这项工作,最好的方法是将他们绑定到一种可被枚举的数据类型内,我们在c#中可用"struct"来完成,c#中的"struct"和c++中的结构很相似。
  
  public struct SecurityInfo
  {
  public string Code;
  public string CompanyName;
  public double Price;
  }
  
    我们可以通过模块创建Web Service,代码如下:
  
  <%@ WebService Language="C#" class="SecurityWebService" %>
  
  using System;
  using System.Web.Services;
  
  public struct SecurityInfo
  {
  public string Code;
  public string CompanyName;
  public double Price;
  }
  
  public class SecurityWebService : WebService
  {
  private SecurityInfo Security;
  
  public SecurityWebService()
  {
  Security.Code = "";
  Security.CompanyName = "";
  Security.Price = 0;
  }
  
  private void AssignValues(string Code)
  {
  // This is where you use your business components.
  // Method calls on Business components are used to populate the data.
  // For demonstration purposes, I will add a string to the Code and
  // use a random number generator to create the price feed.
  
  Security.Code = Code;
  Security.CompanyName = Code + " Pty Ltd";
  Random RandomNumber = new System.Random();
  Security.Price = double.Parse(new System.Random(RandomNumber.Next(1,10)).NextDouble().Format("##.##",null));
  }
  
  
  [WebMethod(Description="This method call will get the company name and the price for a given security code.",EnableSession=false)]
  public SecurityInfo GetSecurityInfo(string Code)
  {
  AssignValues(Code);
  SecurityInfo SecurityDetails = new SecurityInfo();
  SecurityDetails.Code = Security.Code;
  SecurityDetails.CompanyName = Security.CompanyName;
  SecurityDetails.Price = Security.Price;
  return SecurityDetails;
  }
  
展开更多 50%)
分享

猜你喜欢

怎样创建.NET Web Service(2)

ASP
怎样创建.NET Web Service(2)

怎样创建.NET Web Service

ASP
怎样创建.NET Web Service

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

怎样创建.NET Web Service(4)

ASP
怎样创建.NET Web Service(4)

怎样创建.NET Web Service(3)

ASP
怎样创建.NET Web Service(3)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Java与.NET间进行Web Service交互的选择

编程语言 网络编程
Java与.NET间进行Web Service交互的选择

Web Service随笔1

电脑网络
Web Service随笔1

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

web.config一个中文解释

web.config一个中文解释

Linux 指令篇:使用者资讯与管理--last

Linux 指令篇:使用者资讯与管理--last
下拉加载更多内容 ↓