Пример #1
0
        static TMessage Roundtrip <TMessage>(TMessage message) where TMessage : class
        {
            var serializer          = new JilSerializer();
            var roundtrippedMessage =
                serializer.Deserialize(serializer.Serialize(new Message(new Dictionary <string, string>(), message)).Result)
                .Result;

            return(roundtrippedMessage.Body as TMessage);
        }
Пример #2
0
        private static UncommittedMessages GetUncommitedMessages()
        {
            var serializer = new JilSerializer();
            var payload    = serializer.Serialize(new TestContracts.MessageOne {
                ID = 1, Name = "Test data"
            });
            var contractName = TestContracts.GetContractNameByType(typeof(TestContracts.MessageOne));

            return(new UncommittedMessages(
                       Guid.NewGuid(),
                       new[]
            {
                new MessageRecord(Guid.NewGuid(), contractName, payload),
                new MessageRecord(Guid.NewGuid(), contractName, payload),
                new MessageRecord(Guid.NewGuid(), contractName, payload)
            }));
        }
        public void when_serializing_with_custom_options_excludeNulls()
        {
            // Given
            var guid = Guid.NewGuid();
            var data = new { SomeString = "some string value", SomeGuid = guid, NullValue = default(Uri) };
            string expected
                = string.Format("{{\"SomeGuid\":\"{0}\",\"SomeString\":\"some string value\"}}", guid);

            // When
            string actual;
            using (var stream = new MemoryStream())
            {
                JilSerializer.Options = Options.ISO8601ExcludeNullsIncludeInherited;
                ISerializer jilSerializer = new JilSerializer();
                jilSerializer.Serialize("application/json", data, stream);
                actual = Encoding.UTF8.GetString(stream.ToArray());
            }

            // Then
            Assert.AreEqual(expected, actual);
        }
        public void when_serializing_with_custom_options_excludeNulls()
        {
            // Given
            var    guid = Guid.NewGuid();
            var    data = new { SomeString = "some string value", SomeGuid = guid, NullValue = default(Uri) };
            string expected
                = string.Format("{{\"SomeGuid\":\"{0}\",\"SomeString\":\"some string value\"}}", guid);

            // When
            string actual;

            using (var stream = new MemoryStream())
            {
                JilSerializer.Options = Options.ISO8601ExcludeNullsIncludeInherited;
                ISerializer jilSerializer = new JilSerializer();
                jilSerializer.Serialize("application/json", data, stream);
                actual = Encoding.UTF8.GetString(stream.ToArray());
            }

            // Then
            Assert.AreEqual(expected, actual);
        }
Пример #5
0
 public String SerializeSByteWithJilSerializer()
 {
     return(JilSerializer.Serialize(SByteInput));
 }
Пример #6
0
 /// <summary>
 /// 用于redis直接操作中的对象存入redis哈希类型过程中从真实对象转化为系统接口所需类型
 /// </summary>
 /// <returns>返回值</returns>
 public HashEntry[] ToHashEntries(object obj)
 {
     PropertyInfo[] properties = obj.GetType().GetProperties();
     return(properties.Select(property => new HashEntry(property.Name, jil.Serialize(property.GetValue(obj)))).ToArray());
 }