Newtonsoft.Json.Converters.EntityKeyMemberConverter.ReadAndAssertProperty C# (CSharp) Méthode

ReadAndAssertProperty() private static méthode

private static ReadAndAssertProperty ( JsonReader reader, string propertyName ) : void
reader JsonReader
propertyName string
Résultat void
        private static void ReadAndAssertProperty(JsonReader reader, string propertyName)
        {
            reader.ReadAndAssert();

            if (reader.TokenType != JsonToken.PropertyName || !string.Equals(reader.Value.ToString(), propertyName, StringComparison.OrdinalIgnoreCase))
            {
                throw new JsonSerializationException("Expected JSON property '{0}'.".FormatWith(CultureInfo.InvariantCulture, propertyName));
            }
        }

Usage Example

        public override object ReadJson(JsonReader reader, Type objectType, [Nullable(2)] object existingValue, JsonSerializer serializer)
        {
            EntityKeyMemberConverter.EnsureReflectionObject(objectType);

            object obj = EntityKeyMemberConverter._reflectionObject.Creator(new object[0]);

            EntityKeyMemberConverter.ReadAndAssertProperty(reader, "Key");
            reader.ReadAndAssert();
            ReflectionObject reflectionObject = EntityKeyMemberConverter._reflectionObject;
            object           target           = obj;
            string           member           = "Key";
            object           value            = reader.Value;

            reflectionObject.SetValue(target, member, (value != null) ? value.ToString() : null);
            EntityKeyMemberConverter.ReadAndAssertProperty(reader, "Type");
            reader.ReadAndAssert();
            object value2 = reader.Value;
            Type   type   = Type.GetType((value2 != null) ? value2.ToString() : null);

            EntityKeyMemberConverter.ReadAndAssertProperty(reader, "Value");
            reader.ReadAndAssert();
            EntityKeyMemberConverter._reflectionObject.SetValue(obj, "Value", serializer.Deserialize(reader, type));
            reader.ReadAndAssert();
            return(obj);
        }
All Usage Examples Of Newtonsoft.Json.Converters.EntityKeyMemberConverter::ReadAndAssertProperty