/// <summary> /// Main search method. /// </summary> /// <returns>Array of search results.</returns> public List <ISearchEngineResultItem> Search() { int maxNoOfResults = Int32.Parse(MaxNoOfResults); if (ProviderAttributes[MaxNoOfResults] != null) { Int32.TryParse(ProviderAttributes[MaxNoOfResults], out maxNoOfResults); } CalendarEventArgs args = new CalendarEventArgs(); args.SearchPhrase = SearchPhrase; args.MaximumNumberOfItems = maxNoOfResults; EntityCollection <CalendarEventEntity> collection = DependencyInjectionFactory.Resolve <ICalendarEventBLL>(). GetCalendarEvents(args); List <ISearchEngineResultItem> results = new List <ISearchEngineResultItem>(); foreach (CalendarEventEntity CalEvent in collection) { CalendarEventSearchResultItem item = InitializeItem(CalEvent); results.Add(item); } return(results); }
/// <summary> /// Gets a search result template. /// </summary> /// <returns>ISearchEngineResultTemplate for current provider.</returns> public int GetRecordCount() { int maxNoOfResults = MaxNumberOfRecords; if (ProviderAttributes[MaxNoOfResults] != null) { Int32.TryParse(ProviderAttributes[MaxNoOfResults], out maxNoOfResults); } CalendarEventArgs args = new CalendarEventArgs(); args.SearchPhrase = SearchPhrase; args.MaximumNumberOfItems = maxNoOfResults; EntityCollection <CalendarEventEntity> collection = DependencyInjectionFactory.Resolve <ICalendarEventBLL>().GetCalendarEvents(args); RecordCount = args.RecordCount > maxNoOfResults ? maxNoOfResults : args.RecordCount; return(RecordCount); }