Exemplo n.º 1
0
        public void ResolvedDataObjectReference_SerializesToJson_WhenNullable()
        {
            try
            {
                DataObjectRegistries.Reset();
                DataObjectRegistries.Register(GetType().Assembly);

                DataObjectRegistries.Get <TestDataObject>().SetSourceFiles(new[] { Path.Combine("Data", "DataObjectRegistryData.xml") });
                DataObjectRegistries.Load();

                var reference = DataObjectRegistries.ResolveReference("@test:TEST_OBJECT_1");
                var json1     = JsonConvert.SerializeObject((ResolvedDataObjectReference?)reference);

                TheResultingString(json1)
                .ShouldBe(@"""@test:TEST_OBJECT_1""");
            }
            finally
            {
                DataObjectRegistries.Reset();
            }
        }
        public void ResolvedDataObjectReference_SerializesToJson()
        {
            try
            {
                DataObjectRegistries.Reset();
                DataObjectRegistries.Register(GetType().Assembly);

                DataObjectRegistries.Get <TestDataObject>().SetSourceFiles(new[] { Path.Combine("Resources", "DataObjectRegistryData.xml") });
                DataObjectRegistries.Load();

                var reference = DataObjectRegistries.ResolveReference("@test:TEST_OBJECT_1");
                var json      = JsonConvert.SerializeObject(reference,
                                                            CoreJsonSerializerSettings.Instance);

                TheResultingString(json)
                .ShouldBe(@"""@test:TEST_OBJECT_1""");
            }
            finally
            {
                DataObjectRegistries.Reset();
            }
        }
 /// <summary>
 /// Resolves an object reference. If the reference cannot be resolved, an exception is thrown.
 /// </summary>
 /// <param name="reference">The object reference to resolve.</param>
 /// <returns>The resolved object reference.</returns>
 public static ResolvedDataObjectReference ResolveReference(String reference) =>
 DataObjectRegistries.ResolveReference(reference);
Exemplo n.º 4
0
        /// <summary>
        /// Reads a <see cref="ResolvedDataObjectReference"/> value.
        /// </summary>
        private static Object ReadJson_ResolvedDataObjectReference(JsonReader reader, Type objectType, Object existingValue, JsonSerializer serializer)
        {
            var reference = (String)serializer.Deserialize(reader, typeof(String));

            return(DataObjectRegistries.ResolveReference(reference));
        }