Пример #1
0
 private static string RawValueToString(Guid cacheKey, object value)
 {
     if (value == null)
     {
         return(null);
     }
     if (value is IDictionary)
     {
         return(CachedEntryObject.BuildStringFromDictionary(cacheKey, (IDictionary)value));
     }
     if (value is IEnumerable)
     {
         return(CachedEntryObject.BuildStringFromCollection(cacheKey, (IEnumerable)value));
     }
     return(CachedEntryObject.BuildStringFromSingleValue(cacheKey, value));
 }
Пример #2
0
        public byte[] ToSendMessage()
        {
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.Append(this.CacheKey.ToString()).Append('\n');
            stringBuilder.Append(this.OrganizationId.ToString()).Append('\n');
            string value = CachedEntryObject.RawValueToString(this.CacheKey, this.rawValue);

            if (!string.IsNullOrWhiteSpace(value))
            {
                stringBuilder.Append(value);
            }
            else
            {
                stringBuilder.Remove(stringBuilder.Length - 1, 1);
            }
            return(Encoding.UTF8.GetBytes(stringBuilder.ToString()));
        }
Пример #3
0
        private static string BuildStringFromCollection(Guid key, IEnumerable collection)
        {
            StringBuilder stringBuilder = new StringBuilder();

            foreach (object value in collection)
            {
                string value2 = CachedEntryObject.RawValueToString(key, value);
                if (!string.IsNullOrWhiteSpace(value2))
                {
                    stringBuilder.Append(value2).Append(';');
                }
                else
                {
                    stringBuilder.Append("Null").Append(';');
                }
            }
            return(stringBuilder.ToString().TrimEnd(new char[]
            {
                ';'
            }));
        }
Пример #4
0
        private static string BuildStringFromDictionary(Guid key, IDictionary dictionary)
        {
            StringBuilder stringBuilder = new StringBuilder();

            foreach (object obj in dictionary.Keys)
            {
                string value  = CachedEntryObject.BuildStringFromSingleValue(key, obj);
                string value2 = CachedEntryObject.RawValueToString(key, dictionary[obj]);
                stringBuilder.Append(value).Append('=');
                if (!string.IsNullOrWhiteSpace(value2))
                {
                    stringBuilder.Append(value2).Append(';');
                }
                else
                {
                    stringBuilder.Append("Null").Append(';');
                }
            }
            return(stringBuilder.ToString().TrimEnd(new char[]
            {
                ';'
            }));
        }