用VS2012创建和使用WebService


1.打开VS2012,选择“文件”=>“新建”=>“项目”,弹出“新建项目”窗口。

用VS2012创建和使用WebService_第1张图片

2.选择“Web”=>“ASP.NET空Web应用程序”,可以为新建项目设置“名称”、“位置”、“解决方案名称”,然后点击“确定按钮”,就创建了一个ASP.NET的空Web应用程序。

用VS2012创建和使用WebService_第2张图片

3.右键单击项目名称,选择“添加”=>“新建项”,弹出“添加新项”窗口。

用VS2012创建和使用WebService_第3张图片

4.选择“Web”=>“Web服务”选项,可以为新建项修改“名称”,然后单击“添加”按钮,成功添加了一个以.asmx为后缀的Web Services项。

用VS2012创建和使用WebService_第4张图片

5.打开新建的Web Service服务,修改代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

namespace MyWebService
{
    /// 
    /// Summary description for FirstService
    /// Web Service的摘要说明
    /// 
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // 若要允许使用ASP.NET AJAX从脚本中调用此Web服务,请取消注释以下行
    // [System.Web.Script.Services.ScriptService]
    public class FirstService : System.Web.Services.WebService{

        [WebMethod]
        public int ForSUM(int a, int b){
            int sum = 0;
            for (int i = a; i <= b; i++){
                sum += i;
            }
            return sum;
        }

        [WebMethod]
        public int ForMul(int a, int b){
            int sum = 0;
            for (int i = a; i <= b; i++){
                sum *= i;
            }
            return sum;
        }

    }
}

6.将上述程序发布。然后在浏览器中打开可以看到下图:

用VS2012创建和使用WebService_第5张图片

7.下边开始测试Web Service,创建一个新的工程,并添加一个“Web窗体”。

用VS2012创建和使用WebService_第6张图片

8.右键单击项目下的“引用”,选择“添加服务引用”,弹出“添加服务引用”对话框。

用VS2012创建和使用WebService_第7张图片

9.单击左下角的“高级”按钮,弹出“服务引用设置”对话框。

用VS2012创建和使用WebService_第8张图片

10.单击左下角的“添加Web引用”按钮,弹出“添加Web引用”对话框。

用VS2012创建和使用WebService_第9张图片

11.在URL中输入发布的WebService的URL地址,可以点击URL后的按钮,系统会搜索到服务.并且为Web引用设置一个引用名.此引用名将是我们在项目中引用这个服务的命名空间。点击“添加引用”按钮,成功添加该引用。

用VS2012创建和使用WebService_第10张图片

12.在VisitForm.aspx中添加以下代码:

a
b

13.在VisitForm.cs中添加以下事件代码:

protected void btnSum_Click(object sender, EventArgs e)
        {
            FirstService fs = new FirstService();
            int a = txtA.Text.ToString().Trim() == "" ? 0 : Convert.ToInt32(txtA.Text.ToString().Trim());
            int b = txtB.Text.ToString().Trim() == "" ? 0 : Convert.ToInt32(txtB.Text.ToString().Trim());
            labResult.Text = "求和结果:" + fs.ForSUM( a, b ).ToString();
            
            
        }

        protected void btnMul_Click(object sender, EventArgs e)
        {
            FirstService fs = new FirstService();
            int a = txtA.Text.ToString().Trim() == "" ? 0 : Convert.ToInt32(txtA.Text.ToString().Trim());
            int b = txtB.Text.ToString().Trim() == "" ? 0 : Convert.ToInt32(txtB.Text.ToString().Trim());
            labResult.Text = "求积结果:" + fs.ForMul(a, b).ToString();
        }

14.运行结果显示如下:

求和:用VS2012创建和使用WebService_第11张图片

求积: 用VS2012创建和使用WebService_第12张图片




你可能感兴趣的:(.NET那些事)