如何创建和发布.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文件,包含如下代码:
- 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 () {
- //如果使用设计的组件,请取消注释以下行
- //InitializeComponent();
- }
- [WebMethod]
- public string HelloWorld() {
- return "Hello World";
- }
- }
可以在这里修改自己的命名空间,加入自己的方法,但本文只是为了说明如何创建和发布,所以对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, 则:
- iis访问aspx文件显示404无法找到文件?
- 解决办法:
- Microsoft Windows [版本 5.2.3790]
- (C) 版权所有 1985-2003 Microsoft Corp.
- C:\Documents and Settings\Administrator>cd c:\windows\microsoft.net
- C:\WINDOWS\Microsoft.NET>cd fra*
- C:\WINDOWS\Microsoft.NET\Framework>cd v2*
- C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis -i -enable
- 开始安装 ASP.NET (2.0.50727)。
- .........................................................
- ASP.NET (2.0.50727)安装完毕。
- C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>
引用自:http://www.cnblogs.com/mrray/archive/2010/11/24/1886300.html
看运行网页直接在asmx文件上右键浏览。
如何创建和发布.asmx Web Service的更多相关文章
- 项目中使用WCF替换asmx Web service总结
以前项目解决方案中,用http协议的asmx Web service作服务器数据访问入口,在SoapHeader中写入用户名和加盐密码进行身份认证. http asmx服务是明文传输,传输过程中数据很 ...
- 使用 PHP SOAP 来创建一个简单的 Web Service。
访问: http://www.debug.com/php-soap-demo.php?client=22 结果: apache: <VirtualHost _default_:80> Do ...
- 怎样创建.NET Web Service http://blog.csdn.net/xiaoxiaohai123/article/details/1546941
为什么需要Web Service 在通过internet网购买商品后,你可能对配送方式感到迷惑不解.经常的情况是因配送问题找配送公司而消耗你的大量时间,对于配送公司而言这也不是一项增值服务. 为了解决 ...
- Step by Step 创建一个 Web Service
原创地址:http://www.cnblogs.com/jfzhu/p/4022139.html 转载请注明出处 (一)创建Web Service 创建第一个项目,类型选择ASP.NET Empty ...
- 在 ASP.NET MVC 应用中使用 NInject 注入 ASMX 类型的 Web Service
这几天,有同学问到为什么在 ASP.NET MVC 应用中,无法在 .ASMX 中使用 NInject 进行注入. 现象 比如,我们定义了一个接口,然后定义了一个实现. public interfac ...
- 转载——Step by Step 创建一个 Web Service
原创地址:http://www.cnblogs.com/jfzhu/p/4022139.html 转载请注明出处 (一)创建Web Service 创建第一个项目,类型选择ASP.NET Empty ...
- BizTalk开发系列(二十六) 使用Web Service
Web Service是在构建SOA平台中广泛使用的技术.在BizTalk开发过程中使用SOAP适配器接收和发送 Web Services 请求.业务流程可以发布为 Web Services 并使用外 ...
- 开发Web Service的几种方式
本文作者在学习使用Java开发Web Service(不包括Restful)时,由于不知道Java有这么多框架支持开发Web Service一度陷入迷惘,不知道这些框架各有 什么不同,各有什么优缺点. ...
- 使用XFire+Spring构建Web Service(一)——helloWorld篇
转自:http://www.blogjava.net/amigoxie/archive/2007/09/26/148207.html原文出处:http://tech.it168.com/j/2007- ...
随机推荐
- Jquery在项目中的总结
1.构造对象 var _getSearchArg = function () { var argModel = {}; argModel.Txt = value; argModel.Code = va ...
- Moses manual 中Basline System 2.3.4节用IRSTLM创建语言模型的命令有误
手册里写到: ~/irstlm/bin/compile-lm \ --text yes \ news-commentary-v8.fr-en.lm.en.gz \ news-commentary-v8 ...
- @Async java 异步方法
在spring 3中,@Async注解能让某个方法快速变为异步执行,马上来先DEMO上手下. 假如在网站的用户注册后,需要发送邮件,然后用户得到邮件确认后才能继续其他工作: 假设发送是一个很耗费时间的 ...
- Huffman树的编码译码
上个学期做的课程设计,关于Huffman树的编码译码. 要求: 输入Huffman树各个叶结点的字符和权值,建立Huffman树并执行编码操作 输入一行仅由01组成的电文字符串,根据建立的Huffma ...
- [原创]从Oracle和Microsoft Sql Server迁移到PostgreSQL Plus Advanced Server
一.了解PPAS的迁移方式1.在线迁移和离线迁移使用Migration Studio或Migration Toolkit直接向PPAS数据库进行对象定义和数据表中数据的迁移称为在线迁移,生成要迁移对象 ...
- Android--发送短信,并且通知发送方
1.发送短信涉及到权限,我们需要把权限加上 2.当我们发送短信时,不管发送是否成功,接收方是否接收到,系统都会发送广播 3.这时我们注册广播去接收一下就可以了 4.布局文件很简单,里面就两个EditT ...
- [译]rabbitmq 2.5 Where’s my message? Durability and you
我对rabbitmq学习还不深入,这些翻译仅仅做资料保存,希望不要误导大家. There’s a dirty secret about creating queues and exchanges in ...
- MySQL命令输入错误 取消命令
mysql命令行输入错误字符需要取消执行时,可在分号“:”出现前输入“\c”来取消该条命令,注意c前边的“\”. 1 2 3 4 mysql> select -> user() -&g ...
- [转]Ubuntu中root用户和user用户的相互切换
[转]Ubuntu中root用户和user用户的相互切换 http://www.cnblogs.com/weiweiqiao99/archive/2010/11/10/1873761.html Ubu ...
- MyEclipse查看Struts2源码及Javadoc文档
一.查看Struts2源码 1.Referenced Libraries >struts2-core-2.1.6.jar>右击>properties. 2.Java Source A ...