GetJsonString() public method

将对象转为JSON字符串
public GetJsonString ( object data, JsonSetting jsonSetting = null ) : string
data object 需要生成JSON字符串的数据
jsonSetting JsonSetting JSON输出设置
return string
コード例 #1
0
        public void GetJsonStringTest_Null()
        {
            var obj =
                new
                {
                    X =
                        new RootClass()
                        {
                            A = "Jeffrey",
                            B = 31,
                            C = null,
                            ElementClassA = new ElementClass() { A = "Jeffrey", B = null },
                            ElementClassB = null
                        },
                    Y = new
                    {
                        O = "0",
                        Z = (string)null
                    }
                };

            var obj2 = new RootClass()
            {
                A = "Jeffrey",
                B = 31,
                C = null,
                ElementClassA = new ElementClass() { A = "Jeffrey", B = null },
                ElementClassB = null
            };

            var obj3 = new RootClass()
            {
                A = "Jeffrey",
                B = 31,
                C = null,
                ElementClassA = new ElementClass() { A = "Jeffrey", B = null },
                ElementClassB = null,
                ElementClass2 = new ElementClass2()
                {
                    A = "A"
                }
            };

            DateTime dt1 = DateTime.Now;
            SerializerHelper js = new SerializerHelper();

            var json = js.GetJsonString(obj, new JsonSetting(true, new List<string>(new[] { "Z", "C" })));
            Console.WriteLine(json);

            var json2 = js.GetJsonString(obj2, new JsonSetting(true, new List<string>(new[] { "B" })));
            Console.WriteLine(json2);

            var json3 = js.GetJsonString(obj3, new JsonSetting(true, null, new List<Type>(new[] { typeof(ElementClass2) })));
            Console.WriteLine(json3);

            Console.WriteLine((DateTime.Now - dt1).TotalMilliseconds);
        }
コード例 #2
0
        public void GetPreAuthCodeResultTest()
        {
            RegisterTest();//注册

            var preAuthCodeResult = ComponentContainer.GetPreAuthCodeResult(base._appId);
            Assert.IsTrue(preAuthCodeResult.expires_in > 0);

            SerializerHelper serializerHelper=new SerializerHelper();
            Console.Write(serializerHelper.GetJsonString(preAuthCodeResult));
        }
コード例 #3
0
ファイル: CardAPITest.cs プロジェクト: kcly3027/WeiXinMPSDK
        public void TestSerialzeEnumString()
        {
            //测试序列化枚举为字符串
            CustomField customField = new CustomField
            {
                 name_type = MemberCard_CustomField_NameType.FIELD_NAME_TYPE_ACHIEVEMEN,
                 url = "http://weixin.senparc.com"
            };

            SerializerHelper serializerHelper = new SerializerHelper();
            JsonSetting jsonSetting = new JsonSetting();
            var jsonString = serializerHelper.GetJsonString(customField, jsonSetting);
            Console.WriteLine(jsonString);
            Assert.IsTrue(jsonString.Contains("FIELD_NAME_TYPE_ACHIEVEMEN"));
            Assert.IsTrue(jsonString.Contains("http://weixin.senparc.com"));

        }
コード例 #4
0
ファイル: MediaAPI.cs プロジェクト: CurryHan/WeiXinMPSDK
 /// <summary>
 /// 获取永久素材(除了图文)
 /// </summary>
 /// <param name="accessToken"></param>
 /// <param name="mediaId"></param>
 /// <param name="stream"></param>
 public static void GetForeverMedia(string accessToken, string mediaId, Stream stream)
 {
     var url = string.Format("https://api.weixin.qq.com/cgi-bin/material/get_material?access_token={0}", accessToken.AsUrlData());
     var data = new
     {
         media_id = mediaId
     };
     SerializerHelper serializerHelper = new SerializerHelper();
     var jsonString = serializerHelper.GetJsonString(data);
     Post.Download(url, jsonString, stream);
 }
コード例 #5
0
        /// <summary>
        /// 目前支持向指定微信用户的openid发放指定金额红包
        /// 注意total_amount、min_value、max_value值相同
        /// total_num=1固定
        /// 单个红包金额介于[1.00元,200.00元]之间
        /// </summary>
        /// <returns></returns>
        public ActionResult SendRedPack()
        {
            string nonceStr;//随机字符串
            string paySign;//签名
            var sendNormalRedPackResult = RedPackApi.SendNormalRedPack(
                TenPayV3Info.AppId, TenPayV3Info.MchId, TenPayV3Info.Key,
                @"F:\apiclient_cert.p12",     //证书物理地址
                "接受收红包的用户的openId",   //接受收红包的用户的openId
                "红包发送者名称",             //红包发送者名称
                Request.UserHostAddress,      //IP
                100,                          //付款金额,单位分
                "红包祝福语",                 //红包祝福语
                "活动名称",                   //活动名称
                "备注信息",                   //备注信息
                out nonceStr,
                out paySign,
                null,                         //场景id(非必填)
                null,                         //活动信息(非必填)
                null                          //资金授权商户号,服务商替特约商户发放时使用(非必填)
                );

            SerializerHelper serializerHelper = new SerializerHelper();
            return Content(serializerHelper.GetJsonString(sendNormalRedPackResult));
        }
コード例 #6
0
        public void GetJsonStringTest_Expando()
        {
            dynamic test = new ExpandoObject();
            test.x = "Senparc.Weixin SDK";
            test.y = DateTime.Now;

            DateTime dt1 = DateTime.Now;
            SerializerHelper js = new SerializerHelper();

            var json = js.GetJsonString(test);
            Console.WriteLine(json);

            Console.WriteLine((DateTime.Now - dt1).TotalMilliseconds);

        }