采用的工具VS2010生成工程

1. 生成webservice工程:建 ASP.NET 空WEB 应用程序。

2. 在建好的ASP.NET 空WEB应用程序中新建项“web 服务”。

完成上述内容工程结构如下图

下面主要的操作就是在webservice1.asmx.cs文件中进行,里面写了几个服务,两个简单服务两个查询数据库服务;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data.SqlClient;
using System.Data;
using MySql.Data;
using MySql;
using MySql.Data.MySqlClient;
 
namespace webservice
{
    /// <summary>
    /// WebService1 的摘要说明
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
    // [System.Web.Script.Services.ScriptService]
    public  class WebService1 : System.Web.Services.WebService
    {
 
        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
 
        [WebMethod]
        public int GetSum(int a, int b)
        {
            return a + b;
        }
 
        [WebMethod]
        public DataSet query()
        {
            DataSet ds = new DataSet();
            string connstring = "Database=test;Data Source=localhost;User Id=root;Password=root";
            MySqlConnection mycn = new MySqlConnection(connstring);
            mycn.Open();
            MySqlDataAdapter mda = new MySqlDataAdapter("select * from stock_data", mycn);
            mda.Fill(ds,"stock_data");           
            return ds;
        }
 
        [WebMethod]
        public DataSet goldprice()
        {
            DataSet ds = new DataSet();
            string connstring = "Database=test;Data Source=localhost;User Id=root;Password=root";
            MySqlConnection mycn = new MySqlConnection(connstring);
            mycn.Open();
            MySqlDataAdapter mda = new MySqlDataAdapter("select * from goldprice", mycn);
            mda.Fill(ds, "stock_data");
            return ds;
        }
 
         
    }
}

到目前为至C# 的webservice的服务算是写好了。下面我们需要启动些服务F5

运行成功的界面如下图

二:发布此webservice

1. 与发布asp.net是一样的,首先在IIS的网站节点下添加网站;如下图

2. 修改此网站的高级设置: 把应用程序池修改为ASP.NET v4.0即可。

3. 浏览此网站http://192.168.56.1/WebService1.asmx若运行的效果与在VS2010运行的效果一样则部署成功了。

三:webservice服务调用

1. 新建一个测试工程,在工程的引用节点中右击“添加服务引用”把浏览器中的URL填写到地址框中点前往,并修改命名空间;如下图

2. 然后再重新生成一下测试项目,最后在测试项目中定义一个测试方法并调用webservice中的方法。代码如下

1
2
3
4
5
6
7
8
9
10
private void button1_Click(object sender, RoutedEventArgs e)
        {
            YDTF.WebService1SoapClient aa = new YDTF.WebService1SoapClient();
            button1.Content = aa.HelloWorld();
            Menus m = new Menus();
            m.Name = "Name";
            m.NameSpace = "NameSpace";
            DataSet ds = aa.query();
            int i = ds.Tables[0].Rows.Count;
        }

3. 单步调试一下若运行结果和预料一样则成功了。

[.net] c# webservice的更多相关文章

  1. webService

    什么是webService WebService,顾名思义就是基于Web的服务.它使用Web(HTTP)方式,接收和响应外部系统的某种请求.从而实现远程调用.  1:从WebService的工作模式上 ...

  2. 开始webservice了

    一.WebService到底是什么 一言以蔽之:WebService是一种跨编程语言和跨操作系统平台的远程调用技术. 所谓跨编程语言和跨操作平台,就是说服务端程序采用java编写,客户端程序则可以采用 ...

  3. Spring WebService入门

    Web service是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些应用程序,用于开发分布 ...

  4. 浅谈跨域以及WebService对跨域的支持

    跨域问题来源于JavaScript的同源策略,即只有 协议+主机名+端口号 (如存在)相同,则允许相互访问.也就是说JavaScript只能访问和操作自己域下的资源,不能访问和操作其他域下的资源. 在 ...

  5. 浅谈WebService的版本兼容性设计

    在现在大型的项目或者软件开发中,一般都会有很多种终端, PC端比如Winform.WebForm,移动端,比如各种Native客户端(iOS, Android, WP),Html5等,我们要满足以上所 ...

  6. Atitit webservice发现机制 WS-Discovery标准的规范attilax总结

    Atitit webservice发现机制 WS-Discovery标准的规范attilax总结 1.1. WS-Discovery标准1 1.2. 一.WS-Discovery1 1.2.1.   ...

  7. java调用CXF WebService接口的两种方式

    通过http://localhost:7002/card/services/HelloWorld?wsdl访问到xml如下,说明接口写对了. 2.静态调用 // 创建WebService客户端代理工厂 ...

  8. VS2010编写WebService与在IIS的发布<之简单讲解>

    工具VS2010,window环境win7 一:Webservice的创建与方法查看调用 1.新建空web应用程序项目 2.新建web服务 3.自动生成 4.直接跑起来,可以看到有2个方法 5.点击H ...

  9. webService学习之路(三):springMVC集成CXF后调用已知的wsdl接口

    webService学习之路一:讲解了通过传统方式怎么发布及调用webservice webService学习之路二:讲解了SpringMVC和CXF的集成及快速发布webservice 本篇文章将讲 ...

  10. webService学习之路(二):springMVC集成CXF快速发布webService

    继上一篇webService入门之后,http://www.cnblogs.com/xiaochangwei/p/4969448.html ,现在我将我周六在家研究的结果公布出来 本次集成是基于之前已 ...

随机推荐

  1. HDU4565 && 2013年长沙邀请赛A题

    部分转自http://blog.csdn.net/crazy______/article/details/9021169 #include<cstdio> using namespace ...

  2. LeetCode之Maximum Product Subarray

    1.(原文)问题描述 Find the contiguous subarray within an array (containing at least one number) which has t ...

  3. JCronTab 定时调用

    习惯使用 unix/linux 的开发者应该对 crontab 都不陌生.Crontab 是一个很方便的用于 unix/linux 系统的任务调度命令.JCronTab 则是一款全然依照 cronta ...

  4. js操作cookie方法

    cookie cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密).定义于RFC2109和2965都已废弃,最 ...

  5. 打开VMware的系统出错

    打开VMware系统时,出现错误 “Invalid configuration file. File "I:/My Virtual Machines/Windows XP english P ...

  6. location的使用

    <script language="javascript" type="text/javascript"> function setUrl(){   ...

  7. PLinq

    PLinq(Linq的并行计算) 上面介绍完了For和ForEach的并行计算盛宴,微软也没忘记在Linq中加入并行计算.下面介绍Linq中的并行计算. 4.0中在System.Linq命名空间下加入 ...

  8. script —— 终端里的记录器

    当 你在终端或者控制台工作时,你可能想要记录在终端中所做的一切.这些记录可以用来当作史料,保存终端所发生的一切.比如说,你和一些Linux管理员们同 时管理着相同的机器,或者你让某人远程登陆到了你的服 ...

  9. Js 数组(一):基础应用

    (一) Js 数据类型 分为基本数据类型以及引用类型 基本数据类型有 null,undefined,Boolen,Number,String,还有一种复杂数据类型 Object. var var1 = ...

  10. 错误与修复:ASP.NET无法检测IE10,IE11,导致_doPostBack未定义JavaScript错误,恒处于F5卷动条位置

    <browsers>  <browser id="IE11" parentID="Mozilla">    <identifica ...