zoukankan      html  css  js  c++  java
  • someThink

    1.首先VS2005中新建一个WEB服务项目 
    打开“文件”->“新建”->“网站”,在对话框中选择“ASP.NET Web服务”, 
    保存方式下拉框选“文件系统”(如果选HTTP会有一些权限的限制) 
    VS2005会自动生成一个Service.cs文件,包含如下代码: 

    using System; 

    using System.Web; 

    using System.Web.Services; 

    using System.Web.Services.Protocols; 


    [WebService(Namespace = "http://tempuri.org/")] 

    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 

    public class Service : System.Web.Services.WebService 



      public Service () { 


      //Uncomment the following line if using designed components 

      //InitializeComponent(); 

      } 


      [WebMethod] 

      public string HelloWorld() { 

      return "Hello World"; 

      } 

       




    2.生成网站 

    “生成”->“生成网站”或直接Shift+F6 

    3.发布网站 

    “生成”->“发布网站”,这里会弹出一个对话框,什么也不需要修改,记下发布的目录。比如:D:\我的文档\Visual Studio 2005\Projects\WebSite1\PrecompiledWeb\WebSite1,我们需要目录下的文件。 

    4.配置IIS 

    在你的WEB目录下一个文件夹,比如WebService,并将第3步发布目录中的所有文件和目录拷贝到这个目录中,打开IIS,找到你的站点,在这个WebService目录上点右键,选择属性,在弹出对话框的“目录”选择项卡中点击“创建”按钮,然后确定即可。 

    到这时,已经大功告成,你可以通过访问http://域名/webservice/Service.asmx(http://localhost/WebService/Service.asmx)来验证。页面会出现如下图所示内容: 
     


    注意:除了需要在IIS中对服务目录创建程序外,还要注意防火墙或杀毒软件的设置,我在首次访问service.asmx文件时,杀毒软件报告w3wp.exe在系统文件夹中生成asp_code.dll等,应该允许其他创建,否则会无法访问。 

    通过这样简单的方法,你可以轻松建立自己的WEB服务,在同一站点还可以有多个WEB服务。 

    C#的winform中调用Web Service API 
       
    在服务中我们只有一个自动生成的方法:HelloWord(),其实现如下: 

      [WebMethod] 

      public string HelloWorld() { 

      return "Hello World"; 

      } 


    1.添加WEB引用 

    在VS2005中新建一个Windows应用程序项目,取名TestWebService,在项目中添加一个WEB引用,可在“解决方案资源管理器”的项目名上点右键添加,在弹出对话框中的URL输入框中输入WEB服务器的路径:如http://你的域名/web服务务路径/service.asmx(http://localhost/WebService/Service.asmx),点击“前行”按钮后会搜索这个服务,并在右边报告找到的服务,并在左边显示service.asmx页面,我们在WEB引用名输入框中输入一个名字,这个将做为程序中WEB服务的命名空间名,这里我们取名MyWebService。 

    2.添加按钮单击事件 

    在Form中拖出一个Button按钮,双击单击事件处理方法,代码如下: 

      private void button1_Click(object sender, EventArgs e) 

      { 

      MyWebService.Service ws = new TestWebService.MyWebService.Service(); 

      MessageBox.Show(ws.HelloWorld()); 

      } 

    其中mywebservice.Service ws = new testwebservice.mywebservice.Service()是实例化一个WEB服务对象,ws.HelloWorld()是调用WEB服务中的这个HelloWorld方法,其返回字符串将用MessageBox.Show()函数显示出来。 

    好了,最简单的一个调用WEB服务API的WinForm例子已经完成了,编译运行,单击按钮,将会弹出对话框显示“Hello World”信息。 

    重要的一点,在.net的WEB服务API中,除了一般的数据类型外,还可以返回结构和DataSet对象,有了这一点,就可以构建我们大多数的数据库应用了。 


    在WINFORM中我们将添加一个按钮,添加单击事件,在事件处理函数中弹出一个对话框显示HelloWord的结果。 

    你可以在这里修改自己的命名空间,加入自己的方法,但本文只是为了说明如何创建和发布,所以对Service.cs不做任何更改。



  • 相关阅读:
    rtmp 之 amf
    Codeforces Round #601 (Div. 1)
    Codeforces Round #618 (Div. 1)
    Codeforces Round #694 (Div. 1) BCDE
    AtCoder Regular Contest 106 DEF
    AtCoder Grand Contest 006 BCDEFF
    JavaScript中深拷贝的实现方法
    suiidfadf
    macOs打开时提示:xxx.app已损坏修复教程
    vue通过事件对象获取标签上的属性值
  • 原文地址:https://www.cnblogs.com/xianqingzh/p/1596413.html
Copyright © 2011-2022 走看看