zoukankan      html  css  js  c++  java
  • vs2010下创建webservice ----第一天(建立项目,以及不连数据库进行加减乘除)

    Visual Studio 2010默认采用的框架为.NET Framework4,在这个框架中已找不到直接创建WebService的模板方式了。但VS2010可以创建WebService是毋庸置疑的,那么怎么在VS2010中创建WebService呢,请看下面为您提供的两种方法,方法已经本人测试,可以放心使用!

        方法一:.NET Framework4.0框架下,依然可以创建WebService,步骤如下:

            ① 选择"ASP.NET空Web应用程序<ASP.NET Empty Web Application>"模板,建立空的网站or项目; 

             vs2010下创建webservice - 醉生梦死 - 醉生梦死

                           vs2010下创建webservice - 醉生梦死 - 醉生梦死

            ② 添加新项,在"添加新项"窗口中,会找到WebService这个项目模板。

            vs2010下创建webservice - 醉生梦死 - 醉生梦死

            vs2010下创建webservice - 醉生梦死 - 醉生梦死

       

       方法二:将VS2010采用的默认框架,改为使用框架.NET Framework2.03.03.5,这时新建"项目"or新建"网站"就可以找到需要的"ASP.NET WebService模板"来建立WebService了。

           vs2010下创建webservice - 醉生梦死 - 醉生梦死

         采用.NET2.03.03.5创建完WebService,如果这时需要使用.NET Framework4.0的新特性,可在项目属性窗口or网站属性窗口的Build选项卡中选择.NET Framework4.0.

           vs2010下创建webservice - 醉生梦死 - 醉生梦死

    下面是默认的代码,可以实现调用接口,打印出“Hello World”,下面还有浏览器打开的界面

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

    namespace WebServiceTwo
    {
    /// <summary>
    /// Service1 的摘要说明
    /// </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 Service1 : System.Web.Services.WebService
    {

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

      }    }

    单击”HelloWorld"调用接口,转到下面的界面:

    再点击“调用”按钮,就可以看到用XML格式返回的Web Service结果下图。说明我们的Web Service环境没有问题,而且还初步接触了一下最简单的Web Service。

    二:自己写一个WebService,计算加减乘除

    在代码文件里,如果我们写了一个函数后,希望此函数成为外部可调用的接口函数,我们必须在函数上面添上一行代码[WebMethod(Description="函数的描述信息")],如果你的函数没有这个申明,它将不能被用户引用.下来我们开始编写一个简单的Web Service 的例子。

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

    namespace WebServiceTwo
    {
    /// <summary>
    /// Service1 的摘要说明
    /// </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 Service1 : System.Web.Services.WebService
    {

    [WebMethod]
    public string HelloWorld()
    {
    return "Hello World";
    }
    [WebMethod(Description = "求和的方法")]
    public double addition(double i, double j)
    { return i + j; }
    [WebMethod(Description = "求差的方法")]
    public double subtract(double i, double j)
    { return i - j; }
    [WebMethod(Description = "求积的方法")]
    public double multiplication(double i, double j)
    { return i * j; }
    [WebMethod(Description = "求商的方法")]
    public double division(double i, double j)
    {
    if (j != 0)
    return i / j;
    else
    return 0;
    }
    }
    }

    运行的截图:

    同样点击addition方法,进入addition方法的调用页。

    在参数上面输入参数i=6,j=5,如上图,点击调用,就可以看到用XML格式返回的Web Service结果(i与j相加的结果)下图

    到这里,我们会发现,其实webservice并不是那么的神秘,它也不过只是个接口,对我们而言,侧重点就是是接口函数的编写.

    三:其中的报错

    错误原因及解决

    错误原因,默认WebServise的类的类名是Service1,下面实例化时需要实例化这个类,如果不是就会报错
    请注意<%@ WebService Language="C#" CodeBehind="~/App_Code/Service.cs" class="Service" % >
    里的Class="Service1",则Service1必须是你下面定义的类名,如果用其它类名则会有错误

  • 相关阅读:
    驱动02.按键
    驱动01.LED
    更换编译器(转载)
    2.使用线程方式获取标准输入
    1.使用非阻塞方式获取标准输入
    编写一个通用的Makefile文件
    layui 中 表单 会自动刷新的问题
    layui 中弹窗的时候关闭当前页面并刷新
    ssm框架中解决 sqlserver数据库的分页问题(用的是mybatis插件)
    关于 @SuppressWarnings 的注解
  • 原文地址:https://www.cnblogs.com/azzhang/p/4075172.html
Copyright © 2011-2022 走看看