物联网平台提供.NET语言的云端SDK供开发人员使用。本文介绍云端.NET SDK的安装和配置,及使用.NET SDK调用云端API的示例。

安装 IoT .NET SDK

  1. 安装.NET开发环境。
    建议安装:
    • Microsoft .NET Framework 4.0及以上版本。
    • Visual Studio 2010 及以上版本。
  2. 下载阿里云 .NET SDK核心库包和物联网平台.NET SDK包。

    .NET SDK发布列表中,分别单击 SDK 核心库阿里云物联网平台对应的适用于.NET 4.0及以上的DLL引用,即可下载 .NET SDK的核心库和物联网平台.NET SDK的压缩包。解压后获得DLL文件。

  3. 添加核心库的引用。
    1. 在Visual Studio的解决方案资源管理器中,选中您的项目,右键引用
    2. 在弹出的菜单栏中,选择添加引用
    3. 在弹出的添加引用对话框中,选择浏览
    4. 选择之前下载并解压的物联网平台.NET SDK的DLL文件(aliyun-net-sdk-Iot.dllaliyun-net-sdk-Core.dll),单击确认

初始化SDK

说明 以下示例以华东2地域及其服务接入地址为例。您在设置时,需使用您的物联网平台地域和对应的服务接入地址。
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Exceptions;
using Aliyun.Acs.Core.Profile;
DefaultProfile.AddEndpoint("cn-shanghai", "cn-shanghai", "Iot", "iot.cn-shanghai.aliyuncs.com");
IClientProfile clientProfile = DefaultProfile.GetProfile("cn-shanghai", "<your-access-key-id>", "<your-access-key-secret>");
DefaultAcsClient client = new DefaultAcsClient(clientProfile);

请在阿里云官网控制台AccessKey管理 中创建或查看您的AccessKeyId和AccessKeySecret。

发起调用

物联网平台云端API,请参见API列表

以调用Pub接口向Topic发布消息为例。

PubRequest request = new PubRequest();
request.ProductKey = "<productKey>";
request.TopicFullName = "/<productKey>/<deviceName>/get";
byte[] payload = Encoding.Default.GetBytes("Hello World.");
String payloadStr = Convert.ToBase64String(payload);
request.MessageContent = payloadStr;
request.Qos = 0;
try
{
   PubResponse response = client.GetAcsResponse(request);
   Console.WriteLine("publish message result: " + response.Success);
   Console.WriteLine(response.ErrorMessage);
}
catch (ServerException e)
{
   Console.WriteLine(e.ErrorCode);
   Console.WriteLine(e.ErrorMessage);
}
catch (ClientException e)
{
   Console.WriteLine(e.ErrorCode);
   Console.WriteLine(e.ErrorMessage);
}

附录:Demo

点击下载SDK Demo。Demo中包含Java、Python、PHP、.NET版本SDK示例。

另外,阿里云提供API在线调试工具 OpenAPI Explorer。在OpenAPI Explorer页,您可以快速检索和试验调用API。系统会根据您输入的参数同步生成各语言SDK的Demo代码。各语言SDK Demo显示在页面右侧示例代码页签下供您参考。在调试结果页签下,查看API调用的真实请求URL和JSON格式的返回结果。