发布WebService及调用WebService方法Demo

  打开vs2012(这里为什么强调版本,因为vs2012不支持右键添加Web引用)。

  创建一个“ASP.NET空Web应用程序”

  技术分享

创建好项目之后,在解决方案中么,创建“Web服务”。

技术分享

创建好了之后,添加自己定义的方法:

技术分享

这里,我就不强调了[WebMethod] 特性的重要性。

[WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }

        /// <summary>
        /// 自定义的方法
        /// </summary>
        /// <param name="name">姓名</param>
        /// <returns>字符串</returns>
         [WebMethod]
        public string WhoSayHello(string name)
        {
            return name + ": 你好";
        }

这里强调一点,你在自定义方法名时,不要与你WebService的名字相同,如果相同的话,vs在代码编译时会报错:

技术分享

,现在开始配置IIS,准备发布WebService。

在发布前,先创建一个文件夹,作用是,发布WebService 的文件夹目录,里面是空的。然后再把添加网站的物理路径选择,你创建的这个文件夹即可,等我们发布后,里面就会有文件产生:

技术分享

在控制面板中打开IIS管理界面,发布网站:

技术分享

在“网站”上点击右键“添加网站”:

技术分享

这里让大家选择:"特定用户":

只要用的电脑的用户名和密码登录即可;

技术分享

IP地址:填写本地,端口:随便填写一个数字,只要与你IIS存在站点的端口不一样就可以了;

现在就利用vs发布SayHello,点击右键;

技术分享

技术分享

配置文件名称,随便输入就ok了;

技术分享

技术分享

在配置项中选择“ debug”;这里只是简单的Demo,所以我就选择的debug,不要在这里过多的纠结;

点击“发布”;

打开IIS新建的SayHello的站点,浏览目录:

技术分享

你可以在目录中选择“浏览”,可以看到,发布之后的文件,

你还可以点击右键“切换到内容视图”,(如果切换之后没有看见文件,请关闭IIS管理器,重新打开,在切换到内容视图);

技术分享

你可以选中“SayHello.asmx”文件,点击右键“浏览”

技术分享

现在你的WebService,已经发布成功了。

,后面,我们就新创建一个demo来测试自己发布的WebService

新建一个”ASP.NET Web空的应用程序“

然后在项目新建一个web forms页面,当然你也可以创建mvc ,因为,我们这里只是做个demo演示,所以创建web form最方便了。

下面,我们就在页面中添加两个控件,两个是文本控件,还有一个btn控件

技术分享

接下来,我们就在项目中添加web引用:(由于vs2012中,已经取消了右键添加web引用)

所以大家,就点击右键”添加服务引用“;

技术分享

技术分享

技术分享

URL:填写,你在web页面浏览WebService中的URL:

技术分享

Web引用名称:自己随便填写;

完成后,在解决方案管理器中出现新的文件夹:

技术分享

代码:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI;
 6 using System.Web.UI.WebControls;
 7 
 8 namespace WebDemoClient
 9 {
10     public partial class WebHello : System.Web.UI.Page
11     {
12         protected void Page_Load(object sender, EventArgs e)
13         {
14 
15         }
16 
17         protected void Button1_Click(object sender, EventArgs e)
18         {
19             SayHello.SayHello web = new SayHello.SayHello();
20 
21             this.TextBox2.Text = web.WhoSayHello(this.TextBox1.Text);
22         }
23     }
24 }

技术分享

这样,就全部都ok了 ,这里,我没有说WebService 的更多的细节,后面我会像大家介绍,WebService 和WCF。

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。