创建一个 NETMF 服务并为其生成一个 WSDL 文件
本文关键字:一个 文件 WSDL 服务 NETMF 创建 | 更新日期: 2023-09-27 18:32:32
我们希望创建一个存在于设备上的 NETMF Web 服务。
我们已阅读 MSDN 在您的设备上实现 Web 服务。它解释了使用 MfSvcUtil 生成服务模型代码,它假定我们已经有一个 WSDL 文件。
我们首先如何生成 WSDL 文件?
答案
在 C# 中创建 NETMF 服务并从中生成 WSDL。
步骤
首先,使用 DPWS 安装 NEFMF。我们在 Codeplex 上使用 NETMF 4.3 和 NETMF 的 DPWS。这也可能适用于 GitHub 中的 NETMF 4.4 或更高版本。
其次,将C:'Program Files (x86)'Microsoft .NET Micro Framework'v4.3'Tools
添加到您的路径中。这是访问MFSvcUtil
的便捷方式。
第三,创建一个带有服务的新 NETMF 项目。这是一个非常简单的。您将需要引用MFWsStack.dll
因为它包含Ws.ServiceModel
命名空间。
using Ws.ServiceModel;
namespace FooService
{
[ServiceContract]
public interface FooService
{
[OperationContract]
void Start();
}
}
第四,建设项目。
第五,运行以下命令(在PowerShell中)来创建WSDL文件。
> $projectRoot = "C:'FooService'";
> $svcAssembly = ".'bin'Debug'FooService.dll";
> $library = "C:'Program Files (x86)'Microsoft .NET Micro Framework'v4.3'Assemblies'le";
> $destinationDir = ".'temp";
> $destinationFile = "FooService.wsdl";
> cd $projectRoot;
> New-Item -type dir $destinationDir;
> mfsvcutil $svcAssembly /R:$library /D:$destinationDir /O:$destinationFile
ServiceContract = FooService
Operation Name = Start
Writing FooService Service Description to: .'temp'FooService.wsdl
Processing complete.
在上面的脚本中,library
是包含 MFWsStack.dll
的目录,这是我们项目唯一的外部引用。该脚本在 C:'FooService'temp'FooService.wsdl
中创建 WSDL 文件。万岁!