问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何创建,发布Web Service和 C#WINFORM里如何调用WEB Service API

发布网友 发布时间:2022-04-26 12:30

我来回答

1个回答

热心网友 时间:2023-10-09 14:11

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

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

利用VS2005和IIS我们可以很容易地发布一个WEB
SERVICE,因为其中有几个细节需要注意,所在初学者常常在这里出现问题,现通过一个简单的例子说明如何创建和发布一个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不做任何更改。

2.生成网站

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

3.发布网站

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

4.配置IIS

在你的WEB目录下一个文件夹,比如webservice,并将第3步发布目录中的所有文件和目录拷贝到这个目录中,打开IIS,找到你的站点,在这个webservice目录上点右键,选择属性,在弹出对话框的“目录”选择项卡中点击“创建”按钮,然后确定即可。

到这时,已经大功告成,你可以通过访问http://域名/webservice/Service.asmx来验证。页面会出现如下图所示内容:

注意:除了需要在IIS中对服务目录创建程序外,还要注意防火墙或杀毒软件的设置,我在首次访问service.asmx文件时,杀毒软件报告w3wp.exe在系统文件夹中生成asp_code.dll等,应该允许其他创建,否则会无法访问。

通过这样简单的方法,你可以轻松建立自己的WEB服务,在同一站点还可以有多个WEB服务。
二、c#的winform中调用Web Service
API(VB6.0也可以调用该web服务)
现在以C# WinForm为例谈谈如何使用它
,在服务中我们只有一个自动生成的方法:HelloWord(),其实现如下:

[WebMethod]

public string HelloWorld(){

return "Hello
World";

}

在WINFORM中我们将添加一个按钮,添加单击事件,在事件处理函数中弹出一个对话框显示HelloWord的结果。

1.添加WEB引用

在VS2005中新建一个Windows应用程序项目,取名testwebservice,在项目中添加一个WEB引用,可在“解决方案资源管理器”的项目名上点右键添加,在弹出对话框中的URL输入框中输入WEB服务器的路径:如http://你的域名/web服务务路径/service.asmx,点击“前行”按钮后会搜索这个服务,并在右边报告找到的服务,并在左边显示service.asmx页面,我们在WEB引用名输入框中输入一个名字,这个将做为程序中WEB服务的命名空间名,这里我们取名mywebservice。

2.添加按钮单击事件

在Form中拖出一个Button按钮,双击单击事件处理方法,代码如下:

private void button1_Click(object sender,
EventArgs e)
{
mywebservice.Service
ws = new testwebservice.mywebservice.Service();

MessageBox.Show (ws.HelloWorld());
}

其中mywebservice.Service ws = new
testwebservice.mywebservice.Service()是实例化一个WEB服务对象,ws.HelloWorld()是调用WEB服务中的这个HelloWorld方法,其返回字符串将用MessageBox.Show()函数显示出来。

好了,最简单的一个调用WEB服务API的WinForm例子已经完成了,编译运行,单击按钮,将会弹出对话框显示“Hello World”信息。

重要的一点,在.net的WEB服务API中,除了一般的数据类型外,还可以返回结构和DataSet对象,有了这一点,就可以构建我们大多数的数据库应用了。

好了,接下来的工作就是在WEB服务中添加你的API完成你的工作了。

转载仅供参考,版权属于原作者。祝你愉快,满意请采纳哦
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
贷款的话首付准备多少米能提A6L? 运来怎么造句 ...急死了,大家看清楚是不显示,不是没法输入啊,有没有高手指教_百度知 ... wps插入sjqy字体(wps文字添加艺术字体) sjqy钢筋符号字体怎么安装(sjqy钢筋符号字体怎么安装到wps) 钢筋符号等级怎么在wps输入? ...另一台显示乱码。看图。SJQY字库已安装。求解。在线等。 布艺沙发甲醛多久挥发 梦幻国度里那些艺术的装备,黄金的装备怎么来的? 梦幻国度点解有人会全身发光的 牛奶加面粉做面膜面粉的作用是什么 winform程序怎样通过api获取提前一天的天气情况,获取到网页中的天气是json格式 和面时加牛奶的作用 C#winform请求WEB api C# Winform程序调用百度地图api画图 牛奶和面粉能做成面膜吗?可以的话?又有什么功效呢? 关于WinForm 中 调用SetParent这个API的问题 面粉加牛奶做成面膜的功效是什么 c# winform api函数怎么用,网上有没有什么api在c#的使用例子 牛奶和面粉混合有什么作用 纯牛奶加面粉搅拌洗脸有什么作用? 面粉和牛奶干嘛的? 吃生瓜子仁有营养吗? 生瓜子仁用烤箱怎样烤? 请问怎么把生的瓜子仁炒熟,越简单越熟悉越好,谢谢! 瓜子仁怎么吃 生瓜子仁 怎么吃 炒生瓜子仁的做法大全 瓜子仁可以用来做什么菜? 生瓜子仁怎么炒好吃 请问牛奶和在面粉里有发酵的效果?? C# WINFORM怎么加载本地地图API? 牛奶加蛋清加面粉做面膜,有什么作用,一次要多长时间? winform怎么调用微云API对文件进行上传 c#中api的作用 C# Windows API函数怎么使用,举例说明? C#如何实现Windows API 牛奶,面粉,橄榄油做面膜有什么效果? c # 初学者 win32 API转型者,c# 的winform的消息机制是什么?以及它的主线,为什么没有消息循环?? c#中如何调用API函数 C#里面怎么调用API C# 怎么使用API设置按钮visible和Enable属性? 如何使用C#操作WinAPI linux怎么检查有无raid linux 怎么看 raid级别 联想笔记本如何开启无线网卡开关? 联想台式机如何设置网卡启动? 联想thinkpad笔记本无线网卡怎么打开 联想笔记本无线网卡怎么打开? 联想笔记本如何启用无线网卡