如何用c#开发webservice

avatar
作者
筋斗云
阅读量:0

在C#中创建Web服务通常涉及到使用ASMX或WCF(Windows Communication Foundation)技术。这里我将向您展示如何使用ASMX创建一个简单的Web服务。请注意,ASMX现已被WCF取代,但对于简单的场景,它仍然是一个有效的选择。

  1. 打开Visual Studio,创建一个新的“ASP.NET Web应用程序”项目。

  2. 在解决方案资源管理器中,右键单击项目名称,然后选择“添加”->“新建项目”。

  3. 从模板列表中选择“Web”,然后选择“Web服务(ASMX)”。为该Web服务命名,例如“MyWebService.asmx”。

  4. 打开“MyWebService.asmx.cs”文件,您将看到一个名为“MyWebService”的类,其中包含一个名为“HelloWorld”的方法。您可以在此类中添加您自己的方法。

例如,添加一个计算两数之和的方法:

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services;  namespace MyWebService {     [WebService(Namespace = "http://tempuri.org/")]     [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]     [System.ComponentModel.ToolboxItem(false)]     public class MyWebService : System.Web.Services.WebService     {         [WebMethod]         public string HelloWorld()         {             return "Hello World";         }          [WebMethod]         public int Add(int a, int b)         {             return a + b;         }     } } 
  1. 保存更改并运行项目。您将看到一个包含Web服务描述和方法列表的页面。

  2. 若要调用Web服务中的方法,您需要创建一个客户端应用程序。在Visual Studio中创建一个新的控制台应用程序项目。

  3. 在解决方案资源管理器中,右键单击控制台应用程序项目,然后选择“添加服务引用”。

  4. 在“添加服务引用”对话框中,输入Web服务的URL(例如:http://localhost:50958/MyWebService.asmx),然后单击“转到”按钮。Visual Studio将自动检测Web服务并显示可用的方法。

  5. 为Web服务生成的命名空间起一个名字,例如“MyWebServiceClient”,然后单击“确定”按钮。

  6. 在控制台应用程序的“Program.cs”文件中,添加以下代码以调用Web服务中的“Add”方法:

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using MyWebServiceClient;  namespace ConsoleApp1 {     class Program     {         static void Main(string[] args)         {             MyWebService myWebService = new MyWebService();             int result = myWebService.Add(3, 4);             Console.WriteLine("The sum of 3 and 4 is: " + result);             Console.ReadLine();         }     } } 
  1. 运行控制台应用程序,您将看到来自Web服务的结果。

这就是使用C#创建和使用Web服务的基本过程。如果您需要处理更复杂的场景,建议您研究WCF技术,因为它提供了更多的功能和灵活性。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!