public async Task<SearchResultInfo<ArcGISPortalItem>> GetSearchResults(SearchParameters searchParameters)
{
if (searchParameters == null || string.IsNullOrEmpty(searchParameters.QueryString))
return null;
if (CurrentPortalService.Portal == null)
return null;
string accountId = CurrentPortalService.Portal.ArcGISPortalInfo == null ? "" : CurrentPortalService.Portal.ArcGISPortalInfo.Id;
if (!string.IsNullOrEmpty(accountId) && OrganizationResultsOnly) //!this.Portal.ArcGISPortalInfo.CanSearchPublic)
{
string queryString = string.Format("({0}) AND accountid:{1}", searchParameters.QueryString, accountId);
searchParameters = new SearchParameters(queryString)
{
Limit = searchParameters.Limit,
SortField = searchParameters.SortField,
SortOrder = searchParameters.SortOrder,
StartIndex = searchParameters.StartIndex
//QueryString = string.Format("({0}) AND accountid:{1}", searchParameters.QueryString, accountId)
};
}
try
{
return await this.Portal.SearchItemsAsync(searchParameters);
}
catch (Exception)
{
throw;
}
}