webservice之简单创建和发布(一个加法运算)

webservice之简单创建和发布(一个加法运算)

开发工具 visual studio 2010

WebService:严格来说是行业标准,不是技术,使用XML扩展标记语言来表示数据(这个是夸语言和平台的关键)。微软的Web服务实现称为ASP.NET Web Service.它使用Soap简单对象访问协议来实现分布式环境里应用程序之间的数据交互。

WSDL来实现服务接口相关的描述。此外Web services 可以注册到UDDI中心.供其客户查找使用。后来微软做了ASP.NET Web Service的安全,性能,数据加密、解密,托管宿主等多方面的扩展,称为WSE系列,这个是过度产品,最高到WSE3.0.后来就是WCF时代。

这些都是其他扩展的内容了,本文主要讲述如何创建并发布一个webservice。

打开visual studio 新建一个空的asp.net文本应用程序

visual studio 2010 不能直接创建一个webservice应用程序 必须在一个asp.net应用程序中创建相应的服务,直接创建只能创建一个wcf应用程序。

在项目中添加一个web服务

编辑代码

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

namespace Testwebservice
{
    /// <summary>
    /// mywebservice 的摘要说明
    /// </summary>
    [WebService(Namespace = "172.16.2.11")] //为自己以后webservice发布虚拟目录所在的域名 本例子使用本机Ip地址
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
    // [System.Web.Script.Services.ScriptService]//启动对脚本的支持
    public class mywebservice : System.Web.Services.WebService
    {
        //系统自动生成的代码
        //[WebMethod]
        //public string HelloWorld()
        //{
        //    return "Hello World";
        //}
        //定义一个简单的求和方法
        [WebMethod(Description = "求和的方法")]
        public string Addition(double i, double j)
        {
            return "这2个数的和为=== "+(i + j).ToString();
        }

    }
}

发布这个加法运算的webservice

配置web

发布

打开iis

计算机——管理——服务和应用程序——Internet信息服务管理器

添加一个网站

设置默认目录

添加默认文档

全名(打错了 呜呜··)

现在我们点击管理网站——浏览网站

程序报错.net framework服务版本无法识别,也就是说我们写的版本与我们发布时服务器的版本不一致

更改即可

现在浏览网站 就可以看见我们自己发布的加法服务了

接下来我们如何使用这个求和的服务呢?

新建一个空白的asp。netweb应用程序

然后添加服务引用

新建一个web窗口 编辑代码

页面代码

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="useadd.aspx.cs" Inherits="usemytest.useadd" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server" method="get">
    <div>
     <input type="text" name="n1"/>
     <input type="text" name="n2"/>
     <input type="submit" value="求和"/>
    </div>
    </form>
</body>
</html>

cs文件C#代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace usemytest
{
    public partial class useadd : System.Web.UI.Page
    {
        ServiceReference1.mywebserviceSoapClient addsoap = new ServiceReference1.mywebserviceSoapClient();
        //实例化一个SoapClient服务对象
        protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                int n1 = Convert.ToInt32(Request.QueryString["n1"]);//获取加数的值
                int n2 = Convert.ToInt32(Request.QueryString["n2"]);
                string result=addsoap.Addition(n1, n2);//调用webservice中发布的方法
                Response.Write(result);//输出结果
            }

        }
    }
}

运行结果

在部署的时候如果报错:CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\web

解决方法是对发布文件所在文件夹和系统文件夹“c:windows\temp” 目录访问权限 temp--> 属性-->安全-- > 添加everyone -->并赋予其权限为 读 和 写--> 确定

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-29 05:22:59

webservice之简单创建和发布(一个加法运算)的相关文章

[UWP]从头开始创建并发布一个番茄钟

1. 自己用的番茄钟自己做 在PC上我一直使用"小番茄"作为我的番茄钟软件,我把它打开后放在副显示器最大化,这样不仅可以让它尽到本分,而且还可以告诉我的同事"我正在专心工作".可是我总是嫌弃它的手感不够愉悦,总想自己写一个番茄钟软件,正好最近很久没写UWP应用了很手痒,于是就抽空写了个自用的番茄钟并发布到微软应用商店. 结果手感也并不愉悦. 另外,本来本来我也打算用Storyboard实现动画,但火火总是劝我不要搞Storyboard,要用Composition A

使用异步编程实现一个加法运算

加法用法 :两个数先后生成,生成这两个数给随机的延迟,等两个数都生成完后再计算结果 public MainWindow() { InitializeComponent(); } Random rnd = new Random(); int aa, bb, cc; public async Task GetA() { await Task.Run(async () => { await Task.Delay(rnd.Next(1000)); aa = rnd.Next(100); }); a.Te

Skype For Business 2015实战系列11:创建并发布拓扑

Skype For Business 2015实战系列11:创建并发布拓扑 Skype For Business Server安装前需要先定义好拓扑,因为我们要在拓扑中的每台服务器上安装 Skype for Business Server 系统,必须首先创建和发布一个拓扑.发布拓扑时,拓扑信息会载入中央管理存储数据库.如果这是 Enterprise Edition 池,您将在初次发布新拓扑时创建中央管理存储数据库.如果是 Standard Edition,则需要运行部署向导中的"准备第一个 St

洛谷 P1952 火星上的加法运算_NOI导刊2009提高(3)

P1952 火星上的加法运算_NOI导刊2009提高(3) 题目描述 最近欢欢看到一本有关火星的书籍,其中她被一个加法运算所困惑,由于她的运算水平有限.她想向你求助,作为一位优秀的程序员,你当然不会拒绝. 输入输出格式 输入格式: 第一行先愉入一个运算的进制N(2<=N<=36),接下来两行为需要进行运算的字符,其中每个字符串的长度不超过200位,其为N进制的数.其中包括0-9及a-z(代表10-35). 输出格式: 在N进制下它们的和 输入输出样例 输入样例#1: 复制 20 1234567

利用VS2008发布一个简单的webservice

一个开发好的webservice,怎样发布出去,供其他电脑访问呢? 本文将介绍如何发布一个简单的webservice,其中的内容都是在网上查看别人文章,自己仿照着做了一遍,因此,难免会发生错误,如果发现错误,希望各位能够指出,谢谢!! 1.准备工作 1.1一个C#开发好的webservice实例.参考下面例子: http://www.cnblogs.com/LCCRNblog/p/3716406.html 1.2安装好IIS,安装过程: http://www.cnblogs.com/LCCRNb

.NET C# 创建WebService服务简单的例子

Web service是一个基于可编程的web的应用程序,用于开发分布式的互操作的应用程序,也是一种web服务 WebService的特性有以下几点: 1.使用XML(标准通用标记语言)来作为数据交互的格式. 2.跨平台性,因为使用XML所以只要本地应用可以连接网络解析XML就可以实现数据交换,比如安卓.IOS.WindowsPhone等都可以实现对Web service的数据交互. 3.基于HTTP协议,直接跨越防火墙,通用型强: 下面使用Visual Studio 2013(其他VS版本亦是

.NET创建WebService服务简单的例子

Web service是一个基于可编程的web的应用程序,用于开发分布式的互操作的应用程序,也是一种web服务 WebService的特性有以下几点: 1.使用XML(标准通用标记语言)来作为数据交互的格式. 2.跨平台性,因为使用XML所以只要本地应用可以连接网络解析XML就可以实现数据交换,比如安卓.IOS.WindowsPhone等都可以实现对Web service的数据交互. 3.基于HTTP协议,直接跨越防火墙,通用型强: 下面使用Visual Studio 2013(其他VS版本亦是

WebService的创建,发布与调用

创建WebService vs2015新建项目:ASP.Net 空项目 在项目中添加Web服务如下图: 创建WebHello服务代码,完成加.减.乘.除的运算 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.Services; 6 7 namespace WebDemo01 8 { 9 /// <summary> 10

JAVA项目中发布WebService服务——简单实例

1,在Java项目中发布一个WebService服务: 如何发布? --JDK1.6中JAX-WS规范定义了如何发布一个WebService服务: (1)用jdk1.6.0_21以后的版本发布: (2)与Web服务相关的类,都位于Javax.jws.*包中 @WebService--此注解用在类上指定将此类发布成一个WebService: EndPoint--此类为端点服务类,其中publish()方法用于将一个已经添加了@WebService注解对象绑定到一个地址的端口上,用于发布. 2,例子