예제 #1
0
        private async void button3_Click(object sender, EventArgs e)
        {
            hslProgress1.Value = 0;
            hslProgress2.Value = 0;
            DateTime start = DateTime.Now;

            button3.Enabled = false;
            OperateResult <string, byte[]> read = await mqttSyncClient.ReadAsync(
                textBox5.Text, Encoding.UTF8.GetBytes(textBox4.Text),
                new Action <long, long>(SendProgressReport), null,
                new Action <long, long>(ReceiveProgressReport));

            button3.Enabled = true;

            textBox7.Text = (int)(DateTime.Now - start).TotalMilliseconds + " ms";
            if (!read.IsSuccess)
            {
                MessageBox.Show("Read Failed:" + read.ToMessageShowString( )); return;
            }


            // 此处应该修改demo里的RPC接口的默认参数功能
            if (mqttRpcApiInfos != null)
            {
                MqttRpcApiInfo api = mqttRpcApiInfos.FirstOrDefault(m => m.ApiTopic == textBox5.Text);
                if (api != null)
                {
                    api.ExamplePayload = textBox4.Text;
                }
            }

            textBox6.Text = read.Content1;
            string msg = Encoding.UTF8.GetString(read.Content2);

            if (radioButton4.Checked)
            {
                try
                {
                    msg = System.Xml.Linq.XElement.Parse(msg).ToString( );
                }
                catch
                {
                }
            }
            else if (radioButton5.Checked)
            {
                try
                {
                    msg = Newtonsoft.Json.Linq.JObject.Parse(msg).ToString( );
                }
                catch
                {
                }
            }

            textBox8.Text = msg;
        }
예제 #2
0
        private async void button3_Click(object sender, EventArgs e)
        {
            DateTime start = DateTime.Now;

            button3.Enabled = false;
            OperateResult <string> read = await ReadFromServer(webApiClient, (HttpMethod)comboBox1.SelectedItem, textBox9.Text, textBox5.Text);


            button3.Enabled = true;
            textBox7.Text   = (int)(DateTime.Now - start).TotalMilliseconds + " ms";
            if (!read.IsSuccess)
            {
                MessageBox.Show("Read Failed:" + read.ToMessageShowString( )); return;
            }


            // 此处应该修改demo里的RPC接口的默认参数功能
            if (mqttRpcApiInfos != null)
            {
                MqttRpcApiInfo api = mqttRpcApiInfos.FirstOrDefault(m => m.ApiTopic == textBox5.Text);
                if (api != null)
                {
                    api.ExamplePayload = textBox5.Text;
                }
            }

            string msg = read.Content;

            if (radioButton4.Checked)
            {
                try
                {
                    msg = System.Xml.Linq.XElement.Parse(msg).ToString( );
                }
                catch
                {
                }
            }
            else if (radioButton5.Checked)
            {
                try
                {
                    msg = Newtonsoft.Json.Linq.JObject.Parse(msg).ToString( );
                }
                catch
                {
                }
            }

            textBox8.Text = msg;
        }
예제 #3
0
        private void AddTreeNode(TreeNode parent, string key, string infactKey, MqttRpcApiInfo mqttRpc)
        {
            int index = key.IndexOf('/');

            if (index <= 0)
            {
                // 不存在冒号
                TreeNode node = new TreeNode($"{key}");
                node.Tag              = mqttRpc;
                node.ImageKey         = "Method_636";
                node.SelectedImageKey = "Method_636";
                parent.Nodes.Add(node);
            }
            else
            {
                TreeNode node = null;
                for (int i = 0; i < parent.Nodes.Count; i++)
                {
                    if (parent.Nodes[i].Text == key.Substring(0, index))
                    {
                        node = parent.Nodes[i];
                        break;
                    }
                }

                if (node == null)
                {
                    node                  = new TreeNode(key.Substring(0, index));
                    node.ImageKey         = "Class_489";
                    node.SelectedImageKey = "Class_489";
                    AddTreeNode(node, key.Substring(index + 1), infactKey, mqttRpc);
                    parent.Nodes.Add(node);
                }
                else
                {
                    AddTreeNode(node, key.Substring(index + 1), infactKey, mqttRpc);
                }
            }
        }