Inheritance: SearchResultsBase
Beispiel #1
0
        public static SearchResult ConvertListOfMetadataToSearchResultObject(List<Metadata> metadataList, int pageSize,int currentPage)
        {
            SearchResult sro = new SearchResult();

            sro.PageSize = pageSize;
            sro.CurrentPage = currentPage;
            sro.NumberOfHits = metadataList.Count();

            List<HeaderItem> Header = new List<HeaderItem>();
            List<HeaderItem> DefaultHeader = new List<HeaderItem>();
            List<Row> RowList = new List<Row>();

            foreach (Metadata m in metadataList)
            {
                if(metadataList.First()==m)
                {

                    HeaderItem hi = new HeaderItem();

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("datasetid").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);
                    DefaultHeader.Add(hi);
                    sro.Id = hi;

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("title").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);
                    DefaultHeader.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("owner").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);
                    DefaultHeader.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = "PrimaryData";
                    hi.DisplayName = "Primary Data";
                    Header.Add(hi);
                    DefaultHeader.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("versionID").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);
                    DefaultHeader.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("fileType").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("dateLastModified").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("projectLeader").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("dateEntry").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("qualityLevel").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);

                    hi = new HeaderItem();
                    hi.Name = m.GetValueFromNode("dataStatus").Item(0).Name;
                    hi.DisplayName = hi.Name.Titleize();
                    Header.Add(hi);
                }

                Row r = new Row();
                List<object> ValueList = new List<object>();

                   ValueList = new List<object>();
                   ValueList.Add(Convert.ToInt32(m.GetValueFromNode("datasetid").Item(0).InnerText));
                   ValueList.Add(m.GetValueFromNode("title").Item(0).InnerText);
                   ValueList.Add(m.GetValueFromNode("owner").Item(0).InnerText);
                   ValueList.Add("YES");
                   ValueList.Add(m.GetValueFromNode("versionID").Item(0).InnerText);
                   ValueList.Add(m.GetValueFromNode("fileType").Item(0).InnerText);
                   ValueList.Add(m.GetValueFromNode("dateLastModified").Item(0).InnerText);
                   ValueList.Add(m.GetValueFromNode("projectLeader").Item(0).InnerText);
                   ValueList.Add(m.GetValueFromNode("dateEntry").Item(0).InnerText);
                   ValueList.Add(m.GetValueFromNode("qualityLevel").Item(0).InnerText);
                   ValueList.Add(m.GetValueFromNode("dataStatus").Item(0).InnerText);

                   r.Values = ValueList;

                   r.PreviewItem = GetPrevieItem();

                 RowList.Add(r);
            }

            sro.Header = Header;
            sro.Rows = RowList;
            sro.DefaultVisibleHeaderItem = DefaultHeader;
            sro.PageSize = pageSize;
            sro.CurrentPage = currentPage;

            return sro;
        }