public List <SearchObject> GetSearchObjects(Type type, DbServiceProvider dbService, int websiteId, int languageId) { var searchObjects = new List <SearchObject>(); var repo = DbServiceProvider.Execute(type, dbService); var datas = repo.LanguageAndWebsiteFilteredData(websiteId, languageId); foreach (var obj in datas) { foreach (SearchModelProperty item in searchModelProperties) { var prop = type.GetProperty(item.PropertyName); var propvalue = prop?.GetValue(obj)?.ToString(); if (propvalue != null) { if (item.IsHtml) { propvalue = propvalue.Replace(" ", string.Empty); propvalue = Regex.Replace(propvalue, "<.*?>", string.Empty); propvalue = Regex.Replace(propvalue, "\t", " "); propvalue = Regex.Replace(propvalue, "\r", " "); propvalue = Regex.Replace(propvalue, "\n", " "); propvalue = propvalue.Trim(' '); } searchObjects.Add(new SearchObject() { Instance = obj, Value = propvalue, Power = 0 }); } } } return(searchObjects); }
public SearchSystem(IServiceProvider serviceProvider) { this.serviceProvider = serviceProvider; dbServiceProvider = serviceProvider.GetService <DbServiceProvider>(); SearchObjects = new List <SearchObject>(); }