C# WebService快速入门
本文通过一个简单的例子演示了WebService项目的建立与应用。
环境:Win10 64Bit,VS2013
新建WebService项目:文件|新建|项目,打开新建项目对话框,选择 .NET Framework 3.5,否则看不到“ASP.NET Web 服务应用程序”。
项目建成后,可以看到项目目录下有一个Service1.asmx,双击打开的是Service1.asmx.cs,里面有一个类Service1,以及HelloWorld的方法。
ServiceA.asmx|右键|重命名,修改为ServiceA.asmx,对应cs文件的名字也会同时修改,但是类Service1并没有跟着改,Ctrl+Shift+F,全局搜一下Service1,把他们都改过来。
修改Service1.asmx.cs如下:
[WebMethod] public string MyFunc1(string s) { return "MyFunc1 is called, parameter:" + s; } [WebMethod] public string MyFunc2(string s) { return "MyFunc2 is called, parameter:" + s; }
Debug栏里选择IE,生成并运行,IE地址栏显示:http://localhost:6948/ServiceA.asmx,并有一些接口说明。
项目|右键|添加|Web 服务(ASMX),名称输入ServiceB,确定,方法保持缺省的He'llWorld,生成并运行,IE地址栏显示:http://localhost:6948/ServiceB.asmx
说明:
在VS中打开ServiceA的情况下运行,IE打开http://localhost:6948/ServiceA.asmx;
在VS中打开ServiceB的情况下运行,IE打开http://localhost:6948/ServiceB.asmx;
如果两个都关闭,调试运行会打开http://localhost:6948/,并显示错误,可以添加一个Index.html,在里面加上两个Service的地址链接。
接下来建立一个新的项目来使用WebService。注意:保持http://localhost:6948/ServiceA.asmx为打开状态。
新建一个控制台应用程序,控制台项目|右键|添加|服务引用,打开【添加服务引用】对话框,在地址栏中输入“http://localhost:6948/ServiceA.asmx”,点【转到】,在服务中列出了“ServiceA”,命名空间输入“ServiceReferenceA”,【确定】。
可以看到项目中多了一个“Service References”文件夹,里面有一个ServiceReferenceA。
在Program.cs中添加代码如下:
static void Main(string[] args) { ServiceReferenceA.ServiceASoapClient s = new ServiceReferenceA.ServiceASoapClient(); Console.WriteLine(s.MyFunc1("I1")); Console.WriteLine(s.MyFunc2("I2")); }
生成并运行。如果IE关闭,对应的IIS Express也关了,再运行就会出异常。
读者可自己尝试添加http://localhost:6948/ServiceB.asmx的服务。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?