Ejemplo n.º 1
0
        string 执行方法(string 对象名, string 方法名, List <M实参> 参数列表, int 超时毫秒 = 3000)
        {
            var __请求报文 = new M方法执行请求
            {
                对象名称 = 对象名,
                方法名称 = 方法名,
                实参列表 = 参数列表
            };
            var __响应报文 = _N主动会话.请求 <M方法执行结果>(__请求报文, 超时毫秒);

            if (__响应报文 == null)
            {
                throw new ApplicationException(string.Format("执行方法: {0} - {1} 时无响应", 对象名, 方法名));
            }
            if (!__响应报文.成功)
            {
                throw new ApplicationException(string.Format("执行方法: {0} - {1} 时出错, {2}", 对象名, 方法名, __响应报文.描述));
            }
            return(__响应报文.返回值);
        }
Ejemplo n.º 2
0
        public override object ReadJson(JsonReader reader, Type objectType, object value, JsonSerializer serializer)
        {
            var     __结果 = new M方法执行请求();
            JObject __jo = JObject.Load(reader);

            __结果.对象名称 = __jo["对象名称"].Value <string>();
            __结果.方法名称 = __jo["方法名称"].Value <string>();
            if (__jo["实参列表"] != null)
            {
                foreach (JObject __jo1 in __jo["实参列表"].ToArray())
                {
                    var __名称 = __jo1["名称"].Value <string>();
                    var __值  = __jo1["值"].ToString();
                    __结果.实参列表.Add(new M实参 {
                        称 = __名称, 值 = __值
                    });
                }
            }
            //IPAddress address = jo["Address"].to<IPAddress>(serializer);
            //int port = jo["Port"].Value<int>();
            return(__结果);
        }