惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

美团技术团队
D
DataBreaches.Net
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
D
Docker
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
C
Check Point Blog
腾讯CDC
Stack Overflow Blog
Stack Overflow Blog
V
Visual Studio Blog
IT之家
IT之家
月光博客
月光博客
U
Unit 42
K
Kaspersky official blog
T
Threatpost
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
GbyAI
GbyAI
P
Proofpoint News Feed
Last Week in AI
Last Week in AI
云风的 BLOG
云风的 BLOG
酷 壳 – CoolShell
酷 壳 – CoolShell
I
InfoQ
Engineering at Meta
Engineering at Meta
Recorded Future
Recorded Future
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
S
Security @ Cisco Blogs
MyScale Blog
MyScale Blog
大猫的无限游戏
大猫的无限游戏
Security Archives - TechRepublic
Security Archives - TechRepublic
Webroot Blog
Webroot Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Hacker News - Newest:
Hacker News - Newest: "LLM"
S
Schneier on Security
S
Secure Thoughts
The Register - Security
The Register - Security
B
Blog RSS Feed
The Last Watchdog
The Last Watchdog
P
Palo Alto Networks Blog
爱范儿
爱范儿
B
Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
N
News and Events Feed by Topic
阮一峰的网络日志
阮一峰的网络日志
L
LINUX DO - 热门话题
C
Cisco Blogs
Spread Privacy
Spread Privacy
F
Full Disclosure
博客园 - 聂微东
T
The Blog of Author Tim Ferriss

博客园 - 林骄

Android note 2010.08.02 v2 2010.08.03 Android note Android Note 2010.08.02 Android Note 2011.08.01 [Biztalk]问题集 - 林骄 - 博客园 Winform导出Excel Excel单元格颜色 判断系统版本 ListView && XmlReader How to open a folder with explorer - 林骄 Print Can't open Infragistics help document How to get local machine date format.如何获取本机时间格式 cannot open user default database Tips 中文全半角转换 Windows Service 装机备忘 Db2中的时间
WebService
林骄 · 2010-06-09 · via 博客园 - 林骄

一. IIS安装(WIN2003&XP)
WIN2003:
1. 进入“控制面板”。

2. 双击“添加或删除程序”。

3. 单击“添加/删除 Windows 组件”。

4. 在“组件”列表框中,双击“应用程序服务器”。

5. 双击“Internet 信息服务(IIS)”。

6. 从中选择“万维网服务”及“文件传输协议(FTP)服务”。

7. 双击“万维网服务”,从中选择“Active Server Pages” 及“万维网服务”等。

WINXP:
在“组件”列表框中,选择Internet 信息服务(IIS)进行安装即可。

二.相关IIS设置
1.设置默认网站路径
如果操作系统是WIN2003,则还需要在“Web服务扩展”中进行如下设置:


三.WEB SERVICE服务端开发
1.编写服务程序
     文件----->新建----->网站------>ASP.Net Web服务,开发语言选择C#,然后点击确定:

点击确定后输入如下代码:
using System;
using System.Data;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data.OracleClient;
public struct TestData
{
    public Boolean A;
    public string B,C,D;
}
[WebService(Namespace = "自定义命名空间")] //用于设置命名空间
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service : System.Web.Services.WebService
{
    [WebMethod]//一个WebMethod设置一个方法
    public TestData GETDATA()
    {/*此处填写具体要实现的内容*/
     TestData GetData = new TestData();
      GetData.A = false;
      ………………………………………………
      Return GetData ;
     }
}

现在一个简单的WEB SERVICE已经形成,但是必须注意,如果使用VS2005以后开发的
Web Service默认情况下是不支持远程调试的,因此Web.config文件中的
<system.web>节点下加入如下信息:
       <webServices>
            <protocols>
                 <add name="HttpGet"/>
                 <add name="HttpPost"/>
                 <add name="HttpSoap"/>
                 <add name="Documentation"/>          
           </protocols>
         </webServices>
        其中的<protocols>节点指定了ASP.NET Web服务可用来接收从客户端发送来的
请求数据和返回响应数据的协议。
     这样,一个基本的WEB SERVICE已经形成,接下就是发布Web Service.

2.生成和发布网站
       选择“生成”->”发布网站”,选择目录,点击确定:

以我测试的WebService为例,默认网站路径为:C:\Inetpub\wwwroot\,发布的网站
目录为:C:\Inetpub\wwwroot\Test,生成的asmx文件为”Service.asmx”,自己电脑IP为
XX.XXX.XXX.XX,则发布的Web Service引用地址为:
     http://XX.XXX.XXX.XX/test/Service.asmx

在Intenet信息服务(IIS)管理器中,右键点击WEB SERVICE所在文件夹,选择
“属性”,进行如下设置:

3.数据库连接与查询
     为了实现与ORACLE数据库连接,进行数据库操作,需要增加引用:
       //在C#代码中使用ADO.NET的第一步是引用System.Data名称空间,其中含有所有的ADO.NET类。
      using System.Data;
       //如果使用的是Oracle数据库,内置Oracle .NET驱动程序是最佳选择,.NET Framework就提
      //供了这个驱动程序,可以用下面的using指令来引用:
       using System.Data.OracleClient;

       实现数据库连接与操作例子:
       string ConnectionString =
       “Data Source=数据库名;Persist Security Info=True;User ID=用户名;Password=密码;Unicode=True";
        OracleConnection conn = new OracleConnection(ConnectionString);
        OracleCommand cmd = new OracleCommand();
        cmd.Connection = conn;
        cmd.CommandText = "ORACLE FUNCTION或者PROCEDURE";
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.Add("Function或者Procedure传入参数",OracleType.DateTime,50);
        cmd.Parameters[“Function或者Procedurel输出参数”].Direction = ParameterDirection.Output;
        conn.Open();
        cmd.ExecuteNonQuery();
        conn.Close();
        DateTime 自定义变量= (DateTime)cmd.Parameters["输出参数"].Value;

四.WEB SERVICE客户端开发
1.建立客户端应用程序
       文件->新建->项目->Windows窗体应用程序,点击确定:

2.引用Web服务
       选择“视图”->“解决方案资源管理器”,在管理器中右键点击项目名称,选择“添加
服务引用”:

在弹出的“添加服务引用”窗口的地址栏输入Web服务的地址http://XX.XXX.XXX.XX/test/Service.asmx,点击“前往”按钮:

输入命名, 选择“确定按钮”,如果WEB服务有错,会提示相关错误信息.
3.调用Web服务方法
      由于使用的是VS2008,因此需要在代码中增加引用的服务,还要在代码中实例化:
      (1)在设计窗体代码中引用WEB服务:
      using WebServiceClient.Server;//using 客户端应用程序名.引用服务时起的命名空间名

       (2)在Button点击事件代码进行实例化,调用WEB服务提供的方法:
         ServiceSoapClient ws = new ServiceSoapClient();//服务端服务名+SoapClient
         TestData data= ws.GETDATA();
         //TestData为服务端设置的自定义存储信息结构

4.生成WebServiceClient
     选择“生成”->“生成WebServiceClient”;
      如果要发布Client给远程使用,则选择”生成” ->“发布WebServiceClient”;