Pages

Sunday, 19 January 2014

Convert dictionary into json in .net

public static string DictionaryToJson<T>(Dictionary<string, List<T>> Dict, string Object, string StatusCode, string Message)
    {
        StringBuilder sb = new StringBuilder();
        int DictCount = 0;
        int TempCount = 0;
        try
        {
            if (Dict != null && StatusCode == "200" && Message == "Success")
            {
                sb.Append("{\"Status\":\"" + StatusCode + "\",");
                sb.Append("\"Message\":\"" + Message + "\",");
                sb.Append("\"" + Object + "\":");
                sb.Append("[{");
                DictCount = Dict.Count;
                foreach (var lst in Dict)
                {
                    sb.Append("\"" + lst.Key + "\":");
                    sb.Append(JsonConvert.SerializeObject(lst.Value));
                    TempCount++;
                    sb.Append("},{");
                    if (DictCount == TempCount)
                    {
                        int index = EsHelper.EsGetValidString(sb).Length;
                        sb.Remove(index - 2, 2);
                    }
                }
                sb.Append("]}");
                //string error=HttpContext.Current.Session["error"].ToString();
            }
            else
            {
                sb.Append("{\"Status\":\"" + StatusCode + "\",");
                sb.Append("\"Message\":\"" + Message + " \"}");
            }
        }
        catch (Exception ex)
        {
            EsHelper.EsADLogger("Logistics.aspx DictionaryToJson<T>()", ex.Message.ToString());
            StringBuilder ExSb = new StringBuilder();
            ExSb.Append("{\"Status\":\"" + StatusCode + "\",");
            ExSb.Append("\"Message\":\" Service Failed During Json Conversion  \"}");
            return EsHelper.EsGetValidString(ExSb);
        }
        return EsHelper.EsGetValidString(sb);
    }

No comments:

Post a Comment