【发布时间】:2019-08-29 12:15:09
【问题描述】:
我创建了一个本地 web 服务 (.asmx),我想将它添加到 IIS。该服务需要从 Biztalk 中的发送适配器调用。
我在 Visual Studio 中的项目结构如下:
有一个 .asmx 文件,其中包含一个 Web 方法,请参见下面的代码:
public class LocalWebService : System.Web.Services.WebService
{
private BankConnectClient client;
[WebMethod]
public void TransferPayment()
{
ProcessDirectory("C:\\Test\\BankConnectTestFiles");
}
我对 IIS 不是很熟悉,所以我不知道添加此服务以在我的本地主机上运行的最佳方法。我尝试添加一个新网站并将项目文件夹放在 C:\inetpub\wwwroot 中,然后我在 IIS 中使用以下设置对其进行引用:
但是当我浏览到根目录 http://localhost:61406/ 时,我收到 HTTP 错误 403.14。
将 asmx Web 服务部署到 IIS,然后使用 WCF-Custom 或 WCF-BasicHttp 适配器调用 Biztalk 的正确方法是什么?
【问题讨论】:
-
网址错误。 ASMX Web 服务 URL 必须包含实际的 .asmx 文件名和方法名。此外,现在大多数人都使用 ASP.NET Web API 或 ASP.NET Core,您应该认真考虑。
-
你在 IIS 中配置了什么身份验证?
-
感谢您的回复。我在我的 URL 中包含了 .asmx 文件,并为运行该服务的服务帐户授予了该文件夹的权限。它现在似乎按预期工作。我考虑过使用 ASP.NET Web API,但我想保持简单,因为我需要从 Biztalk 调用此服务。我了解 WCF 适配器主要与 .svc 服务一起使用,但其中一些仍然支持 .asmx。