2016-01-31 3 views
0

Мы хотим создать NETMF web service that lives on a device.Создайте службу NETMF и создайте для нее файл WSDL

Мы ознакомились с MSDN Implementing Web Services on Your Devices. Он объясняет Generating Service Model Code Using MfSvcUtil, который предполагает, что у нас уже есть файл WSDL.

Как мы создаем файл WSDL в первую очередь?

ответ

0

Ответ

Создание службы NETMF в C# и генерировать WSDL из него.

шаги

Во-первых, установить NEFMF с DPWS. Мы использовали NETMF 4.3 с DPWS от NETMF on Codeplex. Это может также работать с NETMF 4.4 or later from GitHub.

Во-вторых, добавьте 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, что только внешняя ссылка нашего проекта. Сценарий создает файл WSDL в C:\FooService\temp\FooService.wsdl. Ура!