因此,我想使用Visual Studio 2019通过C#在现有.NET项目中创建WebService。
我已经搜索过,但是刚刚找到了旧版Visual Studio的教程...
如何创建它,以及使用 Visual Studio 2019 接收 POST 数据的最佳方法是什么? ?
答案 0 :(得分:2)
考虑打开解决方案:
在项目的根文件夹中创建了一个名为 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)