对象信息生成Json串

来源:互联网 发布:mac上如何卸载软件 编辑:程序博客网 时间:2024/06/06 09:07

using Newtonsoft.Json;
using Newtonsoft.Json.Linq;       


                      Int64 UnDescValue = Convert.ToInt64(Convert.ToDecimal(DateTime.Now.ToString("yyyyMMddHHmm")) ));
                        StringBuilder sbjosn = new StringBuilder();
                        string enkey = Utils.DESEncryptx.Encrypt(PBKey + PRkey, UnDescValue.ToString());
                        sbjosn.Append("{\"rescode\":\"" + enkey + "\",\"resevent\":\"add_product\",\"data\":");
                        sbjosn.Append("" + ObjectToJson(nlist) + "}");
                        string x = sbjosn.ToString();
                        long tick = DateTime.Now.Ticks;
                        Random ran = new Random((int)(tick & 0xffffffffL) | (int)(tick >> 32));
                        string jsonText = JsonBase.Instance.Getjson("" + itemInterfacemaintain.ChannelAdress + "/BillBusiness.ashx?res=" + Server.UrlEncode(Server.UrlEncode(x)) + "&sj=" + ran.Next());
                        //Response.Write(sbjosn.ToString());
                        //如果返回结果为1,则更新本机更新状态
                        //转换为对象
                        if (jsonText != "" && jsonText != null)
                        {
                            var obj = Newtonsoft.Json.Linq.JObject.Parse(jsonText);
                            if (obj["status"].ToString() == "1")
                            {
                                foreach (CoreOnlineTicketTypeUpdateStateModel itemstate in modUpdateStatelistx)
                                {
                                    itemstate.IsUpdate = 1;
                                    bllUpdateState.Update(itemstate);
                                }
                            }
                        }

 // 从一个对象信息生成Json串

        public static string ObjectToJson(object obj)
        {
            DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
            MemoryStream stream = new MemoryStream();
            serializer.WriteObject(stream, obj);
            byte[] dataBytes = new byte[stream.Length];
            stream.Position = 0;
            stream.Read(dataBytes, 0, (int)stream.Length);
            return Encoding.UTF8.GetString(dataBytes);

        }


      //调用url地址并返回值

        public string Getjson(string url)
        {
            string getWeatherUrl = url;
            WebRequest webReq = WebRequest.Create(getWeatherUrl);
            WebResponse webResp = webReq.GetResponse();
            Stream stream = webResp.GetResponseStream();
            StreamReader sr = new StreamReader(stream, Encoding.UTF8);
            string html = sr.ReadToEnd();
            sr.Close();
            stream.Close();
            return html;
        }

0 0
原创粉丝点击