示例#1
0
        protected virtual List <T> CollectDocuments <T>(ISearchResponse <dynamic> response)
            where T : SearchableBase
        {
            var documents = new List <T>();

            foreach (var document in response.Documents)
            {
                switch ((int)document.type)
                {
                case (int)SearchableTypeEnum.Events:
                case (int)SearchableTypeEnum.News:
                case (int)SearchableTypeEnum.Bulletins:
                    documents.Add(SerializationExtensions.Deserialize <SearchableActivity>(document.ToString()));
                    break;

                case (int)SearchableTypeEnum.Content:
                    documents.Add(SerializationExtensions.Deserialize <SearchableContent>(document.ToString()));
                    break;

                case (int)SearchableTypeEnum.Document:
                    documents.Add(SerializationExtensions.Deserialize <SearchableDocument>(document.ToString()));
                    break;

                default:
                    throw new ArgumentOutOfRangeException(
                              $"Could not resolve type of searchable entity {(SearchableTypeEnum)document.type}");
                }
            }
            return(documents);
        }
示例#2
0
 public void TestCamelCase()
 {
     var obj = new
     {
         BOLGE_ADI    = "ANTALYA",
         CIKIS_TARIHI = "123"
     };
     var result = SerializationExtensions.Serialize(obj);
     var r2     = SerializationExtensions.Deserialize(result, obj.GetType());
 }
示例#3
0
        protected override List <T> CollectDocuments <T>(ISearchResponse <dynamic> response)
        {
            var documents = new List <T>();

            foreach (var document in response.Documents)
            {
                switch ((int)document.type)
                {
                case (int)UintraSearchableTypeEnum.Events:
                case (int)UintraSearchableTypeEnum.News:
                case (int)UintraSearchableTypeEnum.Socials:
                    documents.Add(SerializationExtensions.Deserialize <SearchableActivity>(document.ToString()));
                    break;

                case (int)UintraSearchableTypeEnum.Content:
                    documents.Add(SerializationExtensions.Deserialize <SearchableContent>(document.ToString()));
                    break;

                case (int)UintraSearchableTypeEnum.Document:
                    documents.Add(SerializationExtensions.Deserialize <SearchableDocument>(document.ToString()));
                    break;

                case (int)UintraSearchableTypeEnum.Tag:
                    documents.Add(SerializationExtensions.Deserialize <SearchableTag>(document.ToString()));
                    break;

                case (int)UintraSearchableTypeEnum.Member:
                    documents.Add(SerializationExtensions.Deserialize <SearchableMember>(document.ToString()));
                    break;

                default:
                    throw new ArgumentOutOfRangeException(
                              $"Could not resolve type of searchable entity {(SearchableTypeEnum)document.type}");
                }
            }

            return(documents);
        }
示例#4
0
 public void TestArray()
 {
     var obj    = new[] { 1, 2, 3 };
     var result = SerializationExtensions.Serialize(obj);
     var r2     = SerializationExtensions.Deserialize(result, obj.GetType());
 }