当前位置:实例文章 » C#开发实例» [文章]VS2019新建WebService/Web服务/asmx并通过IIS实现发布和调用

VS2019新建WebService/Web服务/asmx并通过IIS实现发布和调用

发布人:shili8 发布时间:2023-06-27 18:35 阅读次数:346

在Visual Studio 2019中,我们可以通过新建WebService或Web服务来创建一个asmx文件,然后通过IIS实现发布和调用。下面是具体的步骤和代码示例。

1. 新建WebService

在Visual Studio 2019中,选择“文件”->“新建”->“项目”,在弹出的窗口中选择“ASP.NET Web应用程序”,然后选择“Web应用程序”模板,命名为“WebServiceDemo”。

在“解决方案资源管理器”中,右键单击“WebServiceDemo”项目,选择“添加”->“新建项”,在弹出的窗口中选择“Web服务”模板,命名为“DemoService.asmx”。

2. 编写WebService代码

在“DemoService.asmx”文件中,我们可以编写WebService的代码。下面是一个简单的示例:

csharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

namespace WebServiceDemo
{
    /// <summary>
    /// DemoService 的摘要说明
    /// </summary>
    [WebService(Namespace =  />    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。
    // [System.Web.Script.Services.ScriptService]
    public class DemoService : System.Web.Services.WebService
    {

        [WebMethod]
        public string HelloWorld()
        {
            return Hello World;
        }
    }
}


在上面的代码中,我们定义了一个名为“HelloWorld”的Web方法,它返回一个字符串“Hello World”。

3. 发布WebService

在Visual Studio 2019中,我们可以通过“生成”->“发布”来发布我们的WebService。在弹出的窗口中,我们可以选择“文件系统”或“Web Deploy”等方式来发布我们的WebService。

如果选择“文件系统”,我们需要指定发布的目录,然后点击“发布”按钮即可。

如果选择“Web Deploy”,我们需要指定发布的服务器和站点,然后点击“发布”按钮即可。

4. 调用WebService

在IIS中,我们可以通过浏览器来访问我们的WebService。假设我们的WebService发布到了“ />
在页面中,我们可以看到我们定义的“HelloWorld”方法。我们可以点击它,然后在弹出的窗口中输入参数,然后点击“调用”按钮,就可以调用我们的WebService了。

除了在浏览器中调用WebService,我们还可以在代码中调用它。下面是一个简单的示例:

csharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Services.Protocols;

namespace WebServiceDemoClient
{
    class Program
    {
        static void Main(string[] args)
        {
            DemoService.DemoService service = new DemoService.DemoService();
            try
            {
                string result = service.HelloWorld();
                Console.WriteLine(result);
            }
            catch (SoapException ex)
            {
                Console.WriteLine(ex.Message);
            }
            Console.ReadKey();
        }
    }
}


在上面的代码中,我们创建了一个名为“DemoService”的WebService客户端,然后调用了它的“HelloWorld”方法,并输出了返回值。如果调用出错,我们会捕获异常并输出异常信息。

以上就是通过Visual Studio 2019新建WebService/Web服务/asmx并通过IIS实现发布和调用的步骤和代码示例。

相关标签:asp.net后端microsoft
其他信息

其他资源

Top