public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { try { _isWriting = true; var jObject = Newtonsoft.Json.Linq.JObject.FromObject(value, serializer); jObject.AddFirst(new Newtonsoft.Json.Linq.JProperty(_discriminator, GetSubtypeDiscriminator(value.GetType()))); writer.WriteToken(jObject.CreateReader()); } finally { _isWriting = false; } }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { if (value == null) { writer.WriteNull(); return; } var enumerationType = value.GetType(); var factory = ValueFromEnumeration.GetOrAdd(enumerationType, (_) => MakeFuncValueDelegate(enumerationType)); writer.WriteValue(factory(value)); }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { DbGeography geo = value as DbGeography; if (geo == null) { throw new ArgumentException("Parameter is not a DbGeography", "value"); } writer.WriteStartObject(); writer.WritePropertyName("Lon"); writer.WriteValue(geo.Longitude); writer.WritePropertyName("Lat"); writer.WriteValue(geo.Latitude); writer.WriteEndObject(); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { writer.WriteStartObject(); var attributes = (Attribute[])value; if (attributes != null && attributes.Length > 0) { foreach (var att in attributes) { writer.WritePropertyName(AttributeKeyCache.Cache.KeyToString(att.Key)); writer.WriteValue(att.RawValue ?? att.Value); } } writer.WriteEndObject(); }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { if (value is DateTime) { var dt = (DateTime)value; writer.WriteStartConstructor("DateTime"); writer.WriteValue(dt.Year); writer.WriteValue(dt.Month); writer.WriteValue(dt.Day); writer.WriteValue(dt.Hour); writer.WriteValue(dt.Minute); writer.WriteValue(dt.Second); writer.WriteValue(dt.Millisecond); writer.WriteEndConstructor(); } }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { var dr = (DateRange)value; var val = ""; if (dr.StartDate.HasValue) { val += GetUnixTicksString(dr.StartDate.Value); } val += "-"; if (dr.EndDate.HasValue) { val += GetUnixTicksString(dr.EndDate.Value); } writer.WriteValue(val); }
public void WriteToJson(Newtonsoft.Json.JsonWriter writer) { writer.WriteStartObject(); writer.WritePropertyName("audio"); writer.WriteStartArray(); foreach (string audioEvent in this.AudioEvents) { writer.WriteStartObject(); writer.WritePropertyName("event"); writer.WriteValue(audioEvent); writer.WriteEndObject(); } writer.WriteEndArray(); writer.WritePropertyName("guiLayout"); writer.WriteValue(this.GuiLayout); writer.WriteEndObject(); }
protected override void WriteKeys(Newtonsoft.Json.JsonWriter writer) { if (DateStyle != FieldDateTimeStyle.Unspecified) { writer.WritePropertyName("dateStyle"); writer.WriteValue(DateStyle.ToString()); } if (TimeStyle != FieldDateTimeStyle.Unspecified) { writer.WritePropertyName("timeStyle"); writer.WriteValue(TimeStyle.ToString()); } writer.WritePropertyName("isRelative"); writer.WriteValue(IsRelative); }
/// <summary> /// Writes the JSON representation of the object. /// </summary> public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { var catEntry = value as CatalogEntry; if (catEntry != null) { writer.WriteStartObject(); writer.WritePropertyName("key"); writer.WriteValue(catEntry.Key); if (catEntry.Attributes.Length > 0) { writer.WritePropertyName("attributes"); serializer.Serialize(writer, catEntry.Attributes); } writer.WriteEndObject(); } }
public void WriteToJson(Newtonsoft.Json.JsonWriter writer) { writer.WriteStartObject(); writer.WritePropertyName("bones"); writer.WriteStartArray(); foreach (Bone b in this.Bones) { b.WriteToJson(writer); } writer.WriteEndArray(); writer.WritePropertyName("ragdollPose"); writer.WriteValue(this.RagdollPose); writer.WritePropertyName("enterAudio"); writer.WriteValue(this.EnterAudio); writer.WritePropertyName("exitAudio"); writer.WriteValue(this.ExitAudio); writer.WriteEndObject(); }
} // End Function ReadJson public override void WriteJson(Newtonsoft.Json.JsonWriter writer , object value , Newtonsoft.Json.JsonSerializer serializer) { if (!(value is System.IO.DirectoryInfo directoryInfo)) { throw new System.ArgumentOutOfRangeException(nameof(value)); } // End if (!(value is DirectoryInfo directoryInfo)) string dirName = directoryInfo.FullName.Substring(this.m_baseDirLength); if (System.IO.Path.DirectorySeparatorChar != '/') { dirName = dirName.Replace(System.IO.Path.DirectorySeparatorChar, '/'); } writer.WriteValue(dirName); } // End Sub WriteJson
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { var _olist = value as System.Collections.Generic.List <GadgetUnion>; if (_olist != null) { writer.WriteStartArray(); foreach (var _o in _olist) { this.WriteJson(writer, _o, serializer); } writer.WriteEndArray(); } else { this.WriteJson(writer, value as GadgetUnion, serializer); } }
/// <summary>Writes the JSON representation of the object.</summary> /// <param name="writer">The <see cref="T:Newtonsoft.Json.JsonWriter" /> to write to.</param> /// <param name="value">The value.</param> /// <param name="serializer">The calling serializer.</param> public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { writer.WriteStartObject(); var ni = (NetworkInterfaceInternal)value; foreach (var propName in PropertyNames.GetAllNames()) { object propValue = null; if (propName == PropertyNames.Description) { propValue = ni.Description; } else if (propName == PropertyNames.Id) { propValue = ni.Id; } else if (propName == PropertyNames.InterfaceType) { propValue = ni.InterfaceType; } else if (propName == PropertyNames.MacAddress) { propValue = ni.MacAddress; } else if (propName == PropertyNames.Name) { propValue = ni.Name; } else if (propName == PropertyNames.PhysicalAddress) { propValue = ni.PhysicalAddress; } if (propValue != null) { writer.WritePropertyName(propName); writer.WriteValue(propValue); } } writer.WriteEndObject(); }
/// <inheritdoc/> public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { if (value == null) { writer.WriteNull(); } else { var adapter = writer as BsonWriterAdapter; if (adapter != null) { adapter.WriteMaxKey(); } else { WriteExtendedJson(writer); } } }
/// <summary> /// 返回结果的存储过程 /// </summary> /// <param name="strSql">任何SQL语句</param> /// <param name="parameters">参数值</param> /// <returns></returns> public override string ExecuteJson(string strSql, params DbParameter[] parameters) { try { DbCommand cmd = BuilderQueryCommand(strSql, parameters); System.IO.StringWriter sw = null; Newtonsoft.Json.JsonWriter writer = null; sw = new System.IO.StringWriter(); writer = new Newtonsoft.Json.JsonTextWriter(sw); writer.WriteStartArray(); using (DbDataReader dr = cmd.ExecuteReader()) { do { while (dr.Read()) { writer.WriteStartObject(); for (int i = 0; i < dr.FieldCount; i++) { writer.WritePropertyName(dr.GetName(i)); writer.WriteValue(Convert.ToString(dr[i])); } writer.WriteEndObject(); } }while (dr.NextResult()); } writer.WriteEndArray(); writer.Flush(); return(sw.GetStringBuilder().ToString()); } catch (DbException ex) { throw ex; } catch { throw; } }
public override void WriteValue(object Value, Newtonsoft.Json.JsonWriter Writer, MudObject Owner) { var contents = Value as Dictionary <String, Object>; if (contents == null) { throw new InvalidOperationException(); } Writer.WriteStartObject(); foreach (var pair in contents) { Writer.WritePropertyName(pair.Key); PersistAttribute._WriteValue(pair.Value, Writer, Owner); } Writer.WriteEndObject(); }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { throw new NotImplementedException("!!"); // JToken t = JToken.FromObject(value); // if (t.Type != JTokenType.Object) // { // t.WriteTo(writer); // } // else // { // JObject o = (JObject)t; // IList<string> propertyNames = o.Properties().Select(p => p.Name).ToList(); // o.AddFirst(new JProperty("Keys", new JArray(propertyNames))); // o.WriteTo(writer); // } }
public Document CombineWith(JObject jobj) { Newtonsoft.Json.JsonWriter jwriter = CreateWriter(); IEnumerator <JToken> en = jobj.Children().GetEnumerator(); while (en.MoveNext()) { if (en.Current.Type != JTokenType.Property) { throw new Json.JsonParseException("Property was expected."); } if (this[((JProperty)en.Current).Name] == null) { Newtonsoft.Json.JsonConverter conv = new Newtonsoft.Json.Converters.KeyValuePairConverter(); en.Current.WriteTo(jwriter, new Newtonsoft.Json.JsonConverter[] { conv }); } } return(this); }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { NodeState NodeStateFlags = (NodeState)value; //Newtonsoft.Json.JsonConvert.SerializeObject writer.WriteStartObject(); //foreach (NodeState CurrentFlag in Enum.GetValues(NodeStateFlags.GetType())) foreach (NodeState CurrentFlag in Enum.GetValues(typeof(NodeState))) { if ((NodeStateFlags & CurrentFlag) != 0) // if (name.HasFlag(val)) { writer.WritePropertyName(CurrentFlag.ToString()); serializer.Serialize(writer, "true"); } // End if( (NodeStateFlags & CurrentFlag) != 0) } // Next CurrentFlag writer.WriteEndObject(); } // End Sub WriteJson
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { if (value == null) { writer.WriteNull(); } else { var bsonInt32 = (BsonInt32)value; var adapter = writer as BsonWriterAdapter; if (adapter != null) { adapter.WriteInt32(bsonInt32.Value); } else { writer.WriteValue((long)bsonInt32.Value); } } }
public static void CustomSerialization(Dictionary <string, object> dict, Newtonsoft.Json.JsonWriter jsonWriter) { jsonWriter.WriteStartObject(); foreach (var dictKey in dict.Keys) { var val = dict[dictKey]; if (_customTypes.Contains(val.GetType())) { // 可以写入的类型 jsonWriter.WritePropertyName(dictKey); WriteValue(jsonWriter, val); } else if (val is Dictionary <string, object> subDic) { jsonWriter.WritePropertyName(dictKey); CustomSerialization(subDic, jsonWriter); } } jsonWriter.WriteEndObject(); }
/// <inheritdoc/> public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { if (value == null) { writer.WriteNull(); } else { var symbol = (BsonSymbol)value; var adapter = writer as BsonWriterAdapter; if (adapter != null) { adapter.WriteSymbol(symbol.Name); } else { WriteExtendedJson(writer, symbol); } } }
public void WriteToJson(Newtonsoft.Json.JsonWriter writer) { writer.WriteStartObject(); writer.WritePropertyName("name"); writer.WriteValue(this.Name); writer.WritePropertyName("offset"); writer.WriteStartObject(); writer.WritePropertyName("x"); writer.WriteValue(this.Offset[0]); writer.WritePropertyName("y"); writer.WriteValue(this.Offset[1]); writer.WritePropertyName("z"); writer.WriteValue(this.Offset[2]); writer.WriteEndObject(); if (this.FreeRotation) { writer.WritePropertyName("freeRotation"); writer.WriteValue(true); } writer.WriteEndObject(); }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { if (value == null) { writer.WriteNull(); } else { var bsonJavaScript = (BsonJavaScript)value; var adapter = writer as BsonWriterAdapter; if (adapter != null) { adapter.WriteJavaScript(bsonJavaScript.Code); } else { WriteExtendedJson(writer, bsonJavaScript, serializer); } } }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { if (value == null) { writer.WriteNull(); } else { var timestamp = (BsonTimestamp)value; var adapter = writer as BsonWriterAdapter; if (adapter != null) { adapter.WriteTimestamp(timestamp.Value); } else { WriteExtendedJson(writer, timestamp); } } }
/// <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; }
public static void WriteJson(this Newtonsoft.Json.JsonWriter writer, Neo.IO.Json.JObject json) { switch (json) { case null: writer.WriteNull(); break; case Neo.IO.Json.JBoolean boolean: writer.WriteValue(boolean.Value); break; case Neo.IO.Json.JNumber number: writer.WriteValue(number.Value); break; case Neo.IO.Json.JString @string: writer.WriteValue(@string.Value); break; case Neo.IO.Json.JArray @array: writer.WriteStartArray(); foreach (var value in @array) { WriteJson(writer, value); } writer.WriteEndArray(); break; case Neo.IO.Json.JObject @object: writer.WriteStartObject(); foreach (var(key, value) in @object.Properties) { writer.WritePropertyName(key); WriteJson(writer, value); } writer.WriteEndObject(); break; } }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object value, Newtonsoft.Json.JsonSerializer serializer) { writer.WriteStartObject(); // Write properties. var propertyInfos = value.GetType().GetProperties(); foreach (var propertyInfo in propertyInfos) { // Skip the Versions property. if (propertyInfo.Name == "Versions") { continue; } writer.WritePropertyName(propertyInfo.Name); var propertyValue = propertyInfo.GetValue(value, BindingFlags.GetProperty, null, null, null); serializer.Serialize(writer, propertyValue); } writer.WriteEndObject(); }
public override void WriteJson(Newtonsoft.Json.JsonWriter writer, object dataset, Newtonsoft.Json.JsonSerializer serializer) { System.Data.DataSet dataSet = dataset as System.Data.DataSet; DataTableConverter converter = new DataTableConverter(); writer.WriteStartObject(); writer.WritePropertyName("Tables"); writer.WriteStartArray(); foreach (System.Data.DataTable table in dataSet.Tables) { converter.WriteJson(writer, table, serializer); } writer.WriteEndArray(); writer.WriteEndObject(); converter = null; }
/// <summary> /// Writes the JSON representation of the object. /// </summary> public override void WriteJson(Newtonsoft.Json.JsonWriter writer , object dataRow , Newtonsoft.Json.JsonSerializer serializer) { System.Data.DataRow row = dataRow as System.Data.DataRow; writer.WriteStartObject(); foreach (System.Data.DataColumn column in row.Table.Columns) { writer.WritePropertyName(column.ColumnName); if (row[column] == System.DBNull.Value) { serializer.Serialize(writer, null); } else { serializer.Serialize(writer, row[column]); } } writer.WriteEndObject(); }