public static JToken CreateJTokenDtoPartialPut(Byte[] key, Byte[] value, int valueLength, int valueOffset) { using (var jsonWriter = new JTokenWriter()) { jsonWriter.WriteStartObject(); if (key != null) { jsonWriter.WritePropertyName("Key"); String base64 = Convert.ToBase64String(key, 0, key.Length); jsonWriter.WriteValue(base64); } jsonWriter.WritePropertyName("Value"); { jsonWriter.WriteStartObject(); jsonWriter.WritePropertyName("Data"); String base64 = Convert.ToBase64String(value, valueOffset, valueLength); jsonWriter.WriteValue(base64); jsonWriter.WritePropertyName("Offset"); jsonWriter.WriteValue(valueOffset); jsonWriter.WriteEndObject(); } jsonWriter.WriteEndObject(); return jsonWriter.Token; } }
public void Example() { #region Usage JTokenWriter writer = new JTokenWriter(); writer.WriteStartObject(); writer.WritePropertyName("name1"); writer.WriteValue("value1"); writer.WritePropertyName("name2"); writer.WriteStartArray(); writer.WriteValue(1); writer.WriteValue(2); writer.WriteEndArray(); writer.WriteEndObject(); JObject o = (JObject)writer.Token; Console.WriteLine(o.ToString()); // { // "name1": "value1", // "name2": [ // 1, // 2 // ] // } #endregion Assert.AreEqual(@"{ ""name1"": ""value1"", ""name2"": [ 1, 2 ] }", o.ToString()); }
public static JToken CreateJTokenObject(BerkeleyDbError error, Byte[] key, Byte[] value, int keySize, int valueSize) { using (var jsonWriter = new JTokenWriter()) { jsonWriter.WriteStartObject(); if (error != 0) { jsonWriter.WritePropertyName("ErrorCode"); jsonWriter.WriteValue((int)error); } if (key != null) { jsonWriter.WritePropertyName("Key"); String base64 = Convert.ToBase64String(key, 0, keySize); jsonWriter.WriteValue(base64); } if (value != null) { jsonWriter.WritePropertyName("Value"); String base64 = Convert.ToBase64String(value, 0, valueSize); jsonWriter.WriteValue(base64); } jsonWriter.WriteEndObject(); return jsonWriter.Token; } }
public void Example() { JTokenWriter writer = new JTokenWriter(); writer.WriteStartObject(); writer.WritePropertyName("name1"); writer.WriteValue("value1"); writer.WritePropertyName("name2"); writer.WriteStartArray(); writer.WriteValue(1); writer.WriteValue(2); writer.WriteEndArray(); writer.WriteEndObject(); JObject o = (JObject)writer.Token; Console.WriteLine(o.ToString()); // { // "name1": "value1", // "name2": [ // 1, // 2 // ] // } }
private JToken CreateJObject(JsonReader reader) { ValidationUtils.ArgumentNotNull(reader, "reader"); // this is needed because we've already read inside the object, looking for metadata properties using (JTokenWriter writer = new JTokenWriter()) { writer.WriteStartObject(); do { if (reader.TokenType == JsonToken.PropertyName) { string propertyName = (string)reader.Value; do { if (!reader.Read()) break; } while (reader.TokenType == JsonToken.Comment); if (CheckPropertyName(reader, propertyName)) continue; writer.WritePropertyName(propertyName); writer.WriteToken(reader, true, true); } else if (reader.TokenType == JsonToken.Comment) { // eat } else { writer.WriteEndObject(); return writer.Token; } } while (reader.Read()); throw JsonSerializationException.Create(reader, "Unexpected end when deserializing object."); } }
public void State() { using (JsonWriter jsonWriter = new JTokenWriter()) { Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); jsonWriter.WriteStartObject(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WritePropertyName("CPU"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); jsonWriter.WriteValue("Intel"); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WritePropertyName("Drives"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); jsonWriter.WriteStartArray(); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteValue("DVD read/writer"); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); #if !(NET20 || NET35 || PORTABLE || PORTABLE40) || NETSTANDARD1_1 jsonWriter.WriteValue(new BigInteger(123)); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); #endif jsonWriter.WriteValue(new byte[0]); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteEnd(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); } }
public void WriteDuplicatePropertyName() { JTokenWriter writer = new JTokenWriter(); writer.WriteStartObject(); writer.WritePropertyName("prop1"); writer.WriteStartObject(); writer.WriteEndObject(); writer.WritePropertyName("prop1"); writer.WriteStartArray(); writer.WriteEndArray(); writer.WriteEndObject(); StringAssert.AreEqual(@"{ ""prop1"": [] }", writer.Token.ToString()); }
public void WriteTokenWithPropertyParent() { JValue v = new JValue(1); JTokenWriter writer = new JTokenWriter(); writer.WriteStartObject(); writer.WritePropertyName("Prop1"); writer.WriteToken(v.CreateReader()); Assert.AreEqual(WriteState.Object, writer.WriteState); writer.WriteEndObject(); StringAssert.AreEqual(@"{ ""Prop1"": 1 }", writer.Token.ToString()); }
public void CurrentToken() { using (JTokenWriter jsonWriter = new JTokenWriter()) { Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); Assert.AreEqual(null, jsonWriter.CurrentToken); jsonWriter.WriteStartObject(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual(jsonWriter.Token, jsonWriter.CurrentToken); JObject o = (JObject)jsonWriter.Token; jsonWriter.WritePropertyName("CPU"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); Assert.AreEqual(o.Property("CPU"), jsonWriter.CurrentToken); jsonWriter.WriteValue("Intel"); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual(o["CPU"], jsonWriter.CurrentToken); jsonWriter.WritePropertyName("Drives"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); Assert.AreEqual(o.Property("Drives"), jsonWriter.CurrentToken); jsonWriter.WriteStartArray(); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(o["Drives"], jsonWriter.CurrentToken); JArray a = (JArray)jsonWriter.CurrentToken; jsonWriter.WriteValue("DVD read/writer"); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(a[a.Count - 1], jsonWriter.CurrentToken); #if !(NET20 || NET35 || PORTABLE || PORTABLE40) || NETSTANDARD1_1 jsonWriter.WriteValue(new BigInteger(123)); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(a[a.Count - 1], jsonWriter.CurrentToken); #endif jsonWriter.WriteValue(new byte[0]); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); Assert.AreEqual(a[a.Count - 1], jsonWriter.CurrentToken); jsonWriter.WriteEnd(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); Assert.AreEqual(a, jsonWriter.CurrentToken); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); Assert.AreEqual(o, jsonWriter.CurrentToken); } }
public void State() { using (JsonWriter jsonWriter = new JTokenWriter()) { Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); jsonWriter.WriteStartObject(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WritePropertyName("CPU"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); jsonWriter.WriteValue("Intel"); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WritePropertyName("Drives"); Assert.AreEqual(WriteState.Property, jsonWriter.WriteState); jsonWriter.WriteStartArray(); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteValue("DVD read/writer"); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteValue(new byte[0]); Assert.AreEqual(WriteState.Array, jsonWriter.WriteState); jsonWriter.WriteEnd(); Assert.AreEqual(WriteState.Object, jsonWriter.WriteState); jsonWriter.WriteEndObject(); Assert.AreEqual(WriteState.Start, jsonWriter.WriteState); } }
// Token: 0x06000BBB RID: 3003 // RVA: 0x0004388C File Offset: 0x00041A8C private JToken CreateJObject(JsonReader reader) { ValidationUtils.ArgumentNotNull(reader, "reader"); JToken token; using (JTokenWriter jTokenWriter = new JTokenWriter()) { jTokenWriter.WriteStartObject(); while (true) { if (reader.TokenType == JsonToken.PropertyName) { string text = (string)reader.Value; while (reader.Read()) { if (reader.TokenType != JsonToken.Comment) { break; } } if (!this.CheckPropertyName(reader, text)) { jTokenWriter.WritePropertyName(text); jTokenWriter.WriteToken(reader, true, true); } } else if (reader.TokenType != JsonToken.Comment) { break; } if (!reader.Read()) { goto Block_4; } } jTokenWriter.WriteEndObject(); token = jTokenWriter.Token; return token; Block_4: throw JsonSerializationException.Create(reader, "Unexpected end when deserializing object."); } return token; }
/// <summary> /// Erzeugt das JSON-Dokument, welches bei der Passwort-Übergabe /// beim Beitritt zu einer Gruppe gesendet werden kann. /// </summary> /// <param name="password">Das zu kodierende Passwort.</param> /// <returns>Das generierte JSON-Dokument als String.</returns> public string CreatePasswordResource(string password) { string resource = string.Empty; JTokenWriter writer = new JTokenWriter(); writer.WriteStartObject(); writer.WritePropertyName("password"); writer.WriteValue(password); writer.WriteEndObject(); JObject o = (JObject) writer.Token; resource = o.ToString(); return resource; }