.NET WEB SERVICE 学习记录

建立WEB SERVICE的server端
    用VS2003, “文件”-》“新建” -》“项目” -》“C#项目”-》“ASP.NET WEB 服务”
新建项目名称为MYWEBSERVICE1,代码如下,不要忘了引用“System.Data.OracleClient”

using  System;
using  System.Collections;
using  System.ComponentModel;
using  System.Data;
using  System.Diagnostics;
using  System.Web;
using  System.Web.Services;
using  System.IO;
using  System.Data.OracleClient;

namespace  mywebservice
{
    [WebService(Namespace
="http://localhost/mywebservice/")]
    
/// <summary>
    
/// Service1 的摘要说明。
    
/// </summary>

    public class Service1 : System.Web.Services.WebService
    
{
        
public Service1()
        
{
            
//CODEGEN: 该调用是 ASP.NET Web 服务设计器所必需的
            InitializeComponent();
        }


        
组件设计器生成的代码

        
// WEB 服务示例
        
// HelloWorld() 示例服务返回字符串 Hello World
        
// 若要生成,请取消注释下列行,然后保存并生成项目
        
// 若要测试此 Web 服务,请按 F5 键
        [Serializable] 
            
public class Person 
        

            
public Person() 
            

            }
 

            
public Person(string name,string gender) 
            

                
this.Name=name; 
                
this.Gender=gender; 
            }
 

            
public string Name=""
            
public string Gender=""
        }
 
        [WebMethod(CacheDuration
=60)] 
        
public Person[] GetPersons() 
        

            Person Alice
=new Person("Alice","Female"); 
            Person Bob
=new Person("Bob","Male"); 
            Person Chris
=new Person("Chris","Female"); 
            Person Dennis
=new Person("Dennis","Male"); 

            
return new Person[]{Alice,Bob,Chris,Dennis}
        }
 


        [WebMethod] 
        
public string GetPersonTable() 
        

            OracleConnection Ocon 
= 


编译后出来的WEB SERVICE的服务是http://localhost/mywebservice

                   WSDL文件位置为:http://localhost/mywebservice/Service1.asmx?WSDL
内容如下:

   <? xml version="1.0" encoding="utf-8"  ?>  
< wsdl:definitions  xmlns:http ="http://schemas.xmlsoap.org/wsdl/http/"  xmlns:soap ="http://schemas.xmlsoap.org/wsdl/soap/"  xmlns:s ="http://www.w3.org/2001/XMLSchema"  xmlns:soapenc ="http://schemas.xmlsoap.org/soap/encoding/"  xmlns:tns ="http://localhost/mywebservice/"  xmlns:tm ="http://microsoft.com/wsdl/mime/textMatching/"  xmlns:mime ="http://schemas.xmlsoap.org/wsdl/mime/"  targetNamespace ="http://localhost/mywebservice/"  xmlns:wsdl ="http://schemas.xmlsoap.org/wsdl/" >
< wsdl:types >
< s:schema  elementFormDefault ="qualified"  targetNamespace ="http://localhost/mywebservice/" >
< s:element  name ="GetPersons" >
  
< s:complexType  />  
  
</ s:element >
< s:element  name ="GetPersonsResponse" >
< s:complexType >
< s:sequence >
  
< s:element  minOccurs ="0"  maxOccurs ="1"  name ="GetPersonsResult"  type ="tns:ArrayOfPerson"   />  
  
</ s:sequence >
  
</ s:complexType >
  
</ s:element >
< s:complexType  name ="ArrayOfPerson" >
< s:sequence >
  
< s:element  minOccurs ="0"  maxOccurs ="unbounded"  name ="Person"  nillable ="true"  type ="tns:Person"   />  
  
</ s:sequence >
  
</ s:complexType >
< s:complexType  name ="Person" >
< s:sequence >
  
< s:element  minOccurs ="0"  maxOccurs ="1"  name ="Name"  type ="s:string"   />  
  
< s:element  minOccurs ="0"  maxOccurs ="1"  name ="Gender"  type ="s:string"   />  
  
</ s:sequence >
  
</ s:complexType >
< s:element  name ="GetPersonTable" >
  
< s:complexType  />  
  
</ s:element >
< s:element  name ="GetPersonTableResponse" >
< s:complexType >
< s:sequence >
  
< s:element  minOccurs ="0"  maxOccurs ="1"  name ="GetPersonTableResult"  type ="s:string"   />  
  
</ s:sequence >
  
</ s:complexType >
  
</ s:element >
  
</ s:schema >
  
</ wsdl:types >
< wsdl:message  name ="GetPersonsSoapIn" >
  
< wsdl:part  name ="parameters"  element ="tns:GetPersons"   />  
  
</ wsdl:message >
< wsdl:message  name ="GetPersonsSoapOut" >
  
< wsdl:part  name ="parameters"  element ="tns:GetPersonsResponse"   />  
  
</ wsdl:message >
< wsdl:message  name ="GetPersonTableSoapIn" >
  
< wsdl:part  name ="parameters"  element ="tns:GetPersonTable"   />  
  
</ wsdl:message >
< wsdl:message  name ="GetPersonTableSoapOut" >
  
< wsdl:part  name ="parameters"  element ="tns:GetPersonTableResponse"   />  
  
</ wsdl:message >
< wsdl:portType  name ="Service1Soap" >
< wsdl:operation  name ="GetPersons" >
  
< wsdl:input  message ="tns:GetPersonsSoapIn"   />  
  
< wsdl:output  message ="tns:GetPersonsSoapOut"   />  
  
</ wsdl:operation >
< wsdl:operation  name ="GetPersonTable" >
  
< wsdl:input  message ="tns:GetPersonTableSoapIn"   />  
  
< wsdl:output  message ="tns:GetPersonTableSoapOut"   />  
  
</ wsdl:operation >
  
</ wsdl:portType >
< wsdl:binding  name ="Service1Soap"  type ="tns:Service1Soap" >
  
< soap:binding  transport ="http://schemas.xmlsoap.org/soap/http"  style ="document"   />  
< wsdl:operation  name ="GetPersons" >
  
< soap:operation  soapAction ="http://localhost/mywebservice/GetPersons"  style ="document"   />  
< wsdl:input >
  
< soap:body  use ="literal"   />  
  
</ wsdl:input >
< wsdl:output >
  
< soap:body  use ="literal"   />  
  
</ wsdl:output >
  
</ wsdl:operation >
< wsdl:operation  name ="GetPersonTable" >
  
< soap:operation  soapAction ="http://localhost/mywebservice/GetPersonTable"  style ="document"   />  
< wsdl:input >
  
< soap:body  use ="literal"   />  
  
</ wsdl:input >
< wsdl:output >
  
< soap:body  use ="literal"   />  
  
</ wsdl:output >
  
</ wsdl:operation >
  
</ wsdl:binding >
< wsdl:service  name ="Service1" >
  
< documentation  xmlns ="http://schemas.xmlsoap.org/wsdl/"   />  
< wsdl:port  name ="Service1Soap"  binding ="tns:Service1Soap" >
  
< soap:address  location ="http://localhost/mywebservice/Service1.asmx"   />  
  
</ wsdl:port >
  
</ wsdl:service >
  
</ wsdl:definitions >

你可能感兴趣的:(web Service)