private static string SerializeDataRow(DataRow dr) { if (dr == null) { return(null); } JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer(); DataRowConverter drConverter = new DataRowConverter(); return(javaScriptSerializer.Serialize(drConverter.Serialize(dr, null))); }
private void WriteToRedis(string code, DataTable dt) { HashEntry[] entries = new HashEntry[dt.Rows.Count]; for (int i = 0; i < dt.Rows.Count; i++) { var field = dt.Rows[i]["DateTime"].ToString().ToDateTime().ToString(RedisFieldFormat); DataRowConverter converter = new DataRowConverter(); converter.AddExceptFields("DateTime"); var value = JsonConvert.SerializeObject(dt.Rows[i], converter); entries[i] = new HashEntry(field, value); } redisWriter.HSetBulk(code, entries); }
/// <summary> /// 写入JSON对象 /// </summary> /// <param name="writer">JSON写入器</param> /// <param name="value">对象值</param> /// <param name="serializer">JSON序列化器</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DataTable table = value as DataTable; DataRowConverter dataRowConverter = new DataRowConverter(); writer.WriteStartObject(); writer.WritePropertyName("Rows"); writer.WriteStartArray(); foreach (DataRow row in table.Rows) { dataRowConverter.WriteJson(writer, row, serializer); } writer.WriteEndArray(); writer.WriteEndObject(); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> /// <param name="writer">The <see cref="JsonWriter"/> to write to.</param> /// <param name="value">The value.</param> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { DataTable table = value as DataTable; DataRowConverter converter = new DataRowConverter(this.replaceColumnNameWithDefaultNameProperty); //writer.WriteStartObject(); //writer.WritePropertyName("Rows"); writer.WriteStartArray(); foreach (DataRow row in table.Rows) { converter.WriteJson(writer, row, serializer); } writer.WriteEndArray(); //writer.WriteEndObject(); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object dataTable, Newtonsoft.Json.JsonSerializer serializer) { System.Data.DataTable table = dataTable as System.Data.DataTable; DataRowConverter converter = new DataRowConverter(); writer.WriteStartObject(); writer.WritePropertyName("Rows"); writer.WriteStartArray(); foreach (System.Data.DataRow row in table.Rows) { converter.WriteJson(writer, row, serializer); } writer.WriteEndArray(); writer.WriteEndObject(); converter = null; }
/// <summary> /// 序列化DataTable /// </summary> public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var table = value as DataTable; var converter = new DataRowConverter(); writer.WriteStartArray(); foreach (DataRow row in table.Rows) { converter.WriteJson(writer, row, serializer); } writer.WriteEndArray(); }