/// <summary>
        /// 配置设备影子预期数据
        /// </summary>
        public UpdateDeviceShadowDesiredDataResponse UpdateDeviceShadowDesiredData(UpdateDeviceShadowDesiredDataRequest updateDeviceShadowDesiredDataRequest)
        {
            Dictionary <string, string> urlParam = new Dictionary <string, string>();

            urlParam.Add("device_id", updateDeviceShadowDesiredDataRequest.DeviceId.ToString());
            string              urlPath  = HttpUtils.AddUrlPath("/v5/iot/{project_id}/devices/{device_id}/shadow", urlParam);
            SdkRequest          request  = HttpUtils.InitSdkRequest(urlPath, "application/json", updateDeviceShadowDesiredDataRequest);
            HttpResponseMessage response = DoHttpRequestSync("PUT", request);

            return(JsonUtils.DeSerialize <UpdateDeviceShadowDesiredDataResponse>(response));
        }
        private static void updateDeviceShadow(IoTDAClient client)
        {
            UpdateDeviceShadowDesiredDataRequest req = new UpdateDeviceShadowDesiredDataRequest
            {
                DeviceId = "5e25d39a3b7c24fa3638804b_nb_0403_1",
                Body     = new UpdateDesireds()
                {
                    Shadow = new List <UpdateDesired>()
                    {
                        new UpdateDesired()
                        {
                            Desired   = JsonConvert.DeserializeObject("{\"temperature\": \"1\"}"),
                            ServiceId = "Temperature"
                        }
                    }
                }
            };

            try
            {
                var resp = client.UpdateDeviceShadowDesiredData(req);
                Console.WriteLine(resp.HttpStatusCode);
                Console.WriteLine(resp.DeviceId);
                foreach (var DeviceShadowData in resp.Shadow)
                {
                    Console.WriteLine(JsonConvert.SerializeObject(DeviceShadowData));
                }
            }
            catch (RequestTimeoutException requestTimeoutException)
            {
                Console.WriteLine(requestTimeoutException.ErrorMessage);
            }
            catch (ServiceResponseException clientRequestException)
            {
                Console.WriteLine(clientRequestException.HttpStatusCode);
                Console.WriteLine(clientRequestException.ErrorCode);
                Console.WriteLine(clientRequestException.ErrorMsg);
            }
            catch (ConnectionException connectionException)
            {
                Console.WriteLine(connectionException.ErrorMessage);
            }
        }