zoukankan      html  css  js  c++  java
  • WebService 使用的简单例子

     Web服务是什么 

      Web服务的宗旨是创建不需要用户界面就能与其他应用程序交互的Web应用程序。它是松耦合的,并与服务器端和客户端所使用的操作系统、编程语言都无关,这样就在一定的情况下就会使你的效率大大提高。但创建Web服务必须保证的是,服务器端和客户端都要支持行业标准协议HTTP、SOAP(simple object access protocal 简单对象访问协议)和XML。

    简单的例子

    首先在要先创建web服务,就是.asmx后虚名的文件。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Services;
    
    namespace Learning
    {
        /// <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
        {
            //构造并填充info数组
            string[,] strStuInfo ={
                        {"200511020120","贰零零五届","人文法律学院","社会工作","(1)班","无悔","1"},
                        {"200511020121","贰零零五届","人文法律学院","社会工作","(1)班","梁需","2"},
                        {"200511010122","贰零零五届","人文法律学院","法律专业","(1)班","陆磊","3"},
                        {"200511010220","贰零零五届","人文法律学院","法律专业","(2)班","白灵","4"},
                        {"200511010221","贰零零五届","人文法律学院","法律专业","(2)班","剑付","5"},
                        {"200511020222","贰零零五届","人文法律学院","社会工作","(2)班","敬意","6"},
                        {"200511100120","贰零零五届","化工生物学院","生物制药","(1)班","黄兴","7"},
                        {"200511100221","贰零零五届","化工生物学院","生物制药","(2)班","蕾蕾","8"},
                        {"200511100322","贰零零五届","化工生物学院","生物制药","(3)班","白冰","9"},
                        {"200611120120","贰零零六届","化工生物学院","发酵工程","(1)班","书并","10"},
                        {"200611120121","贰零零六届","化工生物学院","发酵工程","(1)班","小鱼","11"},
                        {"200611120421","贰零零六届","化工生物学院","发酵工程","(4)班","声声","12"},
                     };
    
            [WebMethod(Description = "根据学号获得学生的姓名")]
            public string GetName(string strStuNum)
            {
                for (int i = 0; i < strStuInfo.GetLength(0); i++)
                {
                    if (String.Compare(strStuNum, strStuInfo[i, 0], true) == 0)
                        return strStuInfo[i, 5].ToString();
                }
                return "您输入的学号不存在";
            }
    
            [WebMethod(Description = "根据学号获得学生的专业和班级")]
            public string GetClass(string strStuNum)
            {
                for (int i = 0; i < strStuInfo.GetLength(0); i++)
                {
                    if (String.Compare(strStuNum, strStuInfo[i, 0], true) == 0)
                    {
                        return strStuInfo[i, 3].ToString() + strStuInfo[i, 4].ToString();
                    }
                }
                return "您输入的学号不存在";
            }
    
            [WebMethod(Description = "根据学号获得学生的入学时间")]
            public string GetYear(string strStuNum)
            {
                for (int i = 0; i < strStuInfo.GetLength(0); i++)
                {
                    if (String.Compare(strStuNum, strStuInfo[i, 0], true) == 0)
                    {
                        return strStuInfo[i, 1].ToString();
                    }
                }
                return "您输入的学号不存在";
            }
    
            [WebMethod(Description = "根据学号获得学生的学院")]
            public string GetCollege(string strStuNum)
            {
                for (int i = 0; i < strStuInfo.GetLength(0); i++)
                {
                    if (String.Compare(strStuNum, strStuInfo[i, 0], true) == 0)
                    {
                        return strStuInfo[i, 2].ToString();
                    }
                }
                return "您输入的学号不存在";
            }
    
            [WebMethod(Description = "点击次数", EnableSession = true)]
            public int HitCounter()
            {
                if (Session["HitCounter"] == null)
                {
                    Session["HitCounter"] = 1;
                }
                else
                {
                    Session["HitCounter"] = ((int)Session["HitCounter"]) + 1;
                }
                return ((int)Session["HitCounter"]);
            }
        }
    }

    运行文件可以得到如下结果!

    然后就是在页面调用web服务的方法(在项目添加web引用)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    namespace Learning
    {
        public partial class check : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                //添加web引用后,可以把webservice实例化,调用方法
                webtest.WebService1 web = new webtest.WebService1();
                Label1.Text = web.GetYear("200511020120");
                
            }
        }
    }
  • 相关阅读:
    hrbust 1788
    poj2299 ( bit )
    LA3027(并查集)
    hdu1166 (bit)
    hdu1598(并查集)
    cdoj1215 (并查集)
    hdu2643 ( 第二类斯特灵数 )
    hdu3625 ( 第一类斯特灵数 )
    Uva10066
    怎么处理sqlserver2017部署在winowsDocker上时区无法修改成功的方式,并且可以多创建新的容器调用简单的方式直接使用!
  • 原文地址:https://www.cnblogs.com/lgxlsm/p/2944778.html
Copyright © 2011-2022 走看看