如何创建和发布.asmx Web Service

创建和发布Web Service
Web服务方法中可以返回一个DataSet对象

WEB服务可以说是下一代WEB应用程序的基础,无论客户端是WINDOWS应用、ASP.NET Web Form程序、甚至其他语言的客户端,都可以与同一个WEB服务通信,其平台和语言无关性使其有了广阔的发展空间。

利用VS2005和IIS我们可以很容易地发布一个WEB SERVICE

环境:Windows Server 2003,.Net FrameWork 2.0,IIS6.0

工具:VS2005

1.首先VS2005中新建一个WEB服务项目。

打开“文件”->“新建”->“网站”,在对话框中选择“ASP.NET Web服务”,VS2005会自动生成一个Service.cs文件,包含如下代码:

C#代码  

  1. using System;
  2. using System.Web;
  3. using System.Web.Services;
  4. using System.Web.Services.Protocols;
  5. [WebService(Namespace = "http://tempuri.org/")]
  6. [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
  7. public class Service : System.Web.Services.WebService {
  8. public Service () {
  9. //如果使用设计的组件,请取消注释以下行
  10. //InitializeComponent();
  11. }
  12. [WebMethod]
  13. public string HelloWorld() {
  14. return "Hello World";
  15. }
  16. }

可以在这里修改自己的命名空间,加入自己的方法,但本文只是为了说明如何创建和发布,所以对Service.cs不做任何更改。其中可能会需要在项目中添加dll,比如log4net.dll,除了在代码中声明使用:using log4net; 还有就是在项目上右键 - 添加引用 - 添加该dll。就会最终将其添加在项目根目录的Bin文件夹下。

2.生成网站

很简单,“生成”->“生成网站”或直接Shift+F6

3.发布网站

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

4.配置IIS

以windows server 2003为例,首先如果服务器上没有安装iis,则先须安装:

控制面板添加删除 -> 添加/删除组件 -> 应用程序服务器 -> Internet信息服务

如安装过程中需要2003安装光盘上的数据,具体对应是,例如光盘iso文件解压后的话:

cn_win_srv_2003_r2_enterprise_with_sp2_vl_cd1\I386

之后选择什么是对话框上有提示的了,例如IISBACK.VB_之类

进入IIS:

管理工具 -> Internet 信息服务管理器

在IIS管理器 - 网站 - 默认网站(或自己再新建一个网站)下新建一个虚拟目录,比如webservice,并将第3步发布目录中的所有文件和目录拷贝到这个目录中,打开IIS,找到你的站点,在这个webservice目录上点右键,选择属性,在弹出对话框的“虚拟目录”选择项卡中,应用程序名后,点击“创建”按钮,然后确定即可。

到这时,应该已经完成,你可以通过访问http://域名/webservice/Service.asmx来验证。

至此,仍有可能不好访问且如上创建的webservice虚拟目录中若无asp.net选项卡,那就很有可能是如下问题。

注意:

当程序可能需要在Framework2.0框架上运行,而在iis中的默认.net环境是1.1。这时将发生不可识别的节点的问题。

解决办法:

将.net环境升级为2.0,开始 -> 运行 -> cmd ->

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

有时仍旧会提示需要安装.net framework 3.5以上版本

以上安装完毕后,还是可能有些小问题的,比如没有权限执行脚本啊,那就在虚拟目录 - 执行权限 中选择纯脚本

如果还有404, 则:

Js代码  

  1. iis访问aspx文件显示404无法找到文件?
  2. 解决办法:
  3. Microsoft Windows [版本 5.2.3790]
  4. (C) 版权所有 1985-2003 Microsoft Corp.
  5. C:\Documents and Settings\Administrator>cd c:\windows\microsoft.net
  6. C:\WINDOWS\Microsoft.NET>cd fra*
  7. C:\WINDOWS\Microsoft.NET\Framework>cd v2*
  8. C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis -i -enable
  9. 开始安装 ASP.NET (2.0.50727)。
  10. .........................................................
  11. ASP.NET (2.0.50727)安装完毕。
  12. C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>

引用自:http://www.cnblogs.com/mrray/archive/2010/11/24/1886300.html

看运行网页直接在asmx文件上右键浏览。

如何创建和发布.asmx Web Service

时间: 2024-10-10 10:41:40

如何创建和发布.asmx Web Service的相关文章

项目中使用WCF替换asmx Web service总结

以前项目解决方案中,用http协议的asmx Web service作服务器数据访问入口,在SoapHeader中写入用户名和加盐密码进行身份认证. 但http asmx服务都是明文传输,数据在传输过程中很容易被截取.篡改.在内网使用.用户量小.安全问题不严重时可以采用. 因项目发展,需要对服务器进行改造,升级成更高级的安全方式. 最先想到的是将http协议改用https,解决数据明文传输和有可能被篡改问题. 但是,https传输存在两个问题:1是客户机要安装证书,2是运行环境中客户机与服务器之

怎样创建.NET Web Service http://blog.csdn.net/xiaoxiaohai123/article/details/1546941

为什么需要Web Service 在通过internet网购买商品后,你可能对配送方式感到迷惑不解.经常的情况是因配送问题找配送公司而消耗你的大量时间,对于配送公司而言这也不是一项增值服务. 为了解决这种问题,配送公司需要在不降低安全级别的情况下了解更多的递送信息,然而安全公司设计的安全系统却非常复杂.那么我们能不能只使用80端口(web服务器端口)并且只通过web服务器提供信息呢?所以,我们建立了一个全新的web应用程序以便从核心商业应用程序中获得数据.配送公司将为些东西付money,所有的公

转载——Step by Step 创建一个 Web Service

原创地址:http://www.cnblogs.com/jfzhu/p/4022139.html 转载请注明出处 (一)创建Web Service 创建第一个项目,类型选择ASP.NET Empty Web Application 添加一个新项目 Web Service 然后再创建一个类Contact 代码分别如下. Contact.cs: [Serializable] public class Contact { private string name; public string Name

Web Service (四) 手动发布Web Service接口-CXF与Spring集成

当我们发布完Web Service接口之后有两种方式可以调用Web service服务,一种是通过动态客户端方式,另一种是引用服务端的接口,引用服务端接口的方式对于客户端同服务器端耦合比较大,而使用WSDL的方式客户端不知道服务端的存在就可以调用服务器的方法. 下面是项目的结构图: 1.Web Service发布项目 2.编写服务端接口类以及实现类,如下,同上一篇自动发布接口,多了一个注解@WebService package com.test.webservice; import javax.

Step by Step 创建一个Web Service

  (一)创建Web Service 创建一个新的解决方案,第一个项目类型选择ASP.NET Empty Web Application     添加一个新项目 Web Service     然后再创建一个类Contact   代码分别如下. Contact.cs:   HelloWebService.asmx:     (二)创建客户端 下面创建一个客户端调用Web Service,检验一下是否正确.创建一个ASP.NET Empty Web Application     添加服务引用  

谈谈EJB是如何发布Web Service的

定义 我们经常会听到,xx项目中用到了Web Service.那么,什么是Web Service呢? 首先让我们来了解一下Web Service.Web Service技术,就是能使得运行在不同机器上的不同应用无须借助附加的.专门的第三方软件或硬件, 就可相互交换数据或集成.依据Web Service规范实施的应用之间,无论它们所使用的语言.平台或内部协议是什么,都可以相互交换数据.Web Service是自描述.自包含的可用网络模块,可以执行具体的业务功能. Web service是一个平台独

在 ASP.NET MVC 应用中使用 NInject 注入 ASMX 类型的 Web Service

这几天,有同学问到为什么在 ASP.NET MVC 应用中,无法在 .ASMX 中使用 NInject 进行注入. 现象 比如,我们定义了一个接口,然后定义了一个实现. public interface IMessageProvider { string GetMessage(); } 定义一个接口的实现. public class NinjectMessageProvider : IMessageProvider { public string GetMessage() { return "T

Step by Step 创建一个 Web Service

(一)创建Web Service 创建第一个项目.类型选择ASP.NET Empty Web Application 加入一个新项目 Web Service 然后再创建一个类Contact 代码分别例如以下. Contact.cs: [Serializable] public class Contact { private string name; public string Name { get { return name; } set { name = value; } } private

Web Service (二) CXF自动发布Web Service(No Spring)

Web Service实现目前流行的框架主要有两种,cxf和axis这两个框架,下面是这两个框架的优缺点,我们这个项目中使用的是cxf这个框架,首先看一下没有集成spring的时候是怎么实现远程调用的. Axis与Cxf比较 在SOA领域,我们认为Web Service是SOA体系的构建单元(building block).这两个框架 都是从已有的开源项目发展起来的.这两个框架哪一个更好一些呢? 通过一个比较矩阵来比较Axis2和CXF变得有现实的意义.最主要的区别在以下几个方面: 1.CXF支