Skip to main content
 首页 » 编程设计

c#之了解 .NET Web 服务

2024年02月03日28qlqwjy

我最近一直在研究 .net 网络服务(之前从未接触过),我想知道是否有人可以帮助我进一步了解它们的工作原理。

我主要关注 asmx 网络服务;我知道这是现在的遗留问题,但我只想解决这个问题,然后我将转向我读过的 WCF,它更好/更丰富。

首先,我一直看到网络服务代理这个词?这是什么以及我的解决方案的哪一部分也指的是这个。当我创建解决方案时,它会在 binn 目录中生成一个 .asmx 文件和一个 DLL 文件。

如果用户连接到 asmx 文件,DLL 会做什么?

此外,我在过去的后续 .net 解决方案中引用了 asmx Web 服务,并在我的代码中轻松使用它们。 .net asmx Web 服务是否可以从其他平台和语言(例如基于 PHP 或 Java)使用,还是仅限于 .net?

对于非常基本的问题感到抱歉......我只是开始简单 :)

请您参考如下方法:

Web 服务代理 是您代码中的一个类,代表本地或远程托管的 Web 服务 - 它允许您的其他代码与该服务交互,就好像它只是您的任何本地类一样应用。对于使用该服务的其他类来说,Web 服务可能被远程托管这一事实是完全不可见的,他们只知道一个类存在并具有方法。这些方法通常转换为网络服务上的方法。

ASMX 文件有两个元素,一个是代码元素,就像 ASPX 在 中有一个 ASPX.CS ASP.NET 网络表单解决方案。在那个例子中,当你编译你的代码时,你仍然有一个 ASPX,但是 ASPX.CS 被编译成一个 DLL 来执行由 .NET 运行时。这与 ASMX 完全相同。

当您创建一个 ASMX 网络服务时,您还会得到一个自动生成的 WSDL 文件 - 这可以通过附加 '?wsdl' 在您的 Web 服务路径之后。此 WSDL 是一个标准,允许非 .NET 系统(在您的示例中为 Java、PHP)使用 Web 服务。

希望这对您有所帮助!