Ejemplo n.º 1
0
 ///// <summary>
 ///// 返回Datatable 及 TotalCount.
 ///// 兼容Json 和 XML
 ///// </summary>
 public static void WrapResponse(bool success, DataTable dt, int totalCount, string message)
 {
     if (GetResponseDataType() == ResponseDataType.JSON)
     {
         AJAXHelper.WrapJsonResponse4DataTable(success, dt, totalCount, message);
     }
     else if (GetResponseDataType() == ResponseDataType.XML)
     {
         AJAXHelper.WrapXMLResponse4DataTable(success, dt, totalCount, message);
     }
     else
     {
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 返回文本
 /// _ResponseDataType: 'json' or 'xml', 设置返回数据格式。
 /// </summary>
 public static void WrapResponse(bool success, string text, string message)
 {
     if (GetResponseDataType() == ResponseDataType.JSON)
     {
         AJAXHelper.WrapJsonResponse(success, text, message);
     }
     else if (GetResponseDataType() == ResponseDataType.XML)
     {
         AJAXHelper.WrapXMLResponse(success, text, message);
     }
     else
     {
     }
 }
Ejemplo n.º 3
0
        ///// <summary>
        ///// 将DataTable以XML格式包装
        ///// </summary>
        public static void WrapXMLResponse4DataTable(bool success, DataTable dt, int totalCount, string message)
        {
            //(1)包装Datatable与TotalCount
            XmlDocument doc = new XmlDocument();
            //doc.AppendChild(doc.CreateXmlDeclaration("1.0", "utf-8", null));//"utf-8"
            XmlElement root = doc.CreateElement("root");

            XmlElement totalCountEle = doc.CreateElement(AJAXHelper.TotalCountKeyName);

            totalCountEle.InnerXml = totalCount.ToString();
            root.AppendChild(totalCountEle as XmlNode);

            XmlElement dataEle = doc.CreateElement(AJAXHelper.DataKeyName);

            dataEle.InnerXml = Converter.DataTable2XML(dt);
            root.AppendChild(dataEle as XmlNode);

            //(2)
            AJAXHelper.WrapXMLResponse(success, root.InnerXml, message);
        }
Ejemplo n.º 4
0
        ///// <summary>
        ///// 将DataTable(某些列)以Json格式包装
        ///// </summary>
        public static void WrapJsonResponse4DataTable(bool success, DataTable dt, List <string> colIds, int totalCount, string message)
        {
            //(1)包装Datatable与TotalCount
            StringBuilder sbJson = new StringBuilder();
            StringWriter  swJson = new StringWriter(sbJson);

            using (JsonWriter jsonWriter = new JsonTextWriter(swJson))
            {
                jsonWriter.Formatting = Newtonsoft.Json.Formatting.Indented;
                jsonWriter.WriteStartObject();
                jsonWriter.WritePropertyName(AJAXHelper.TotalCountKeyName);
                jsonWriter.WriteValue(totalCount);
                jsonWriter.WritePropertyName(AJAXHelper.DataKeyName);
                jsonWriter.WriteValue(Converter.DataTable2Json(dt, colIds));
                jsonWriter.WriteEndObject();
            }
            swJson.Flush();//清空缓存,并将缓冲的数据写出到基础设备
            //(2)
            AJAXHelper.WrapJsonResponse(success, sbJson.ToString(), message);
        }