使用VS2019创建WebService

时间:2019-08-02 14:35:57

标签: c# .net visual-studio

因此,我想使用Visual Studio 2019通过C#在现有.NET项目中创建WebService。

我已经搜索过,但是刚刚找到了旧版Visual Studio的教程...

如何创建它,以及使用 Visual Studio 2019 接收 POST 数据的最佳方法是什么? ?

2 个答案:

答案 0 :(得分:2)

考虑打开解决方案:

  • 右键单击项目名称(在解决方案资源管理器中),转到“添加” ,然后单击“添加新项目...”

first step

  • 选择“ Visual C#” ,向下滚动,选择“ Web服务(ASMX)” ,然后单击“添加”
  • >

second step

在项目的根文件夹中创建了一个名为 WebService.asmx 的文件(或您输入的名称)。在内部,您应该看到该代码:

<%@ WebService Language="C#" CodeBehind="~/App_Code/WebService.cs" Class="WebService" %>

此文件仅用于调用代码,位于“〜/ App_Code / WebService.cs” 。因此,如果您想通过 POST 进行调用,则应使用

www.host.com/pathTo/projectRoot/WebService.asmx/functionName?Params=values

打开“〜/ App_Code / WebService.cs” 后,您应该会看到类似的内容:

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

/// <summary>
/// Summary description for WebService
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService
{

    public WebService()
    {

        //Uncomment the following line if using designed components 
        //InitializeComponent(); 
    }

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

}

在这里,您可以自定义代码以接收和处理 POST 数据。

您不能在这里使用Request["param"],但是HttpContext.Current.Request["param"];是我发现的最佳方法。

就像一个人所说的那样:ASMX是一种古老的实现方式,但在我们时代之前一直有效。

答案 1 :(得分:1)

这就是我创建一个带有 asmx 页面的项目的方式。 create new project

create an empty on

right click for a new item

and look for webservice.asmx