private ViewDataAdapter.FetchResult GetData(string base64SecureConfiguration, string sortExpression, IDictionary <string, string> customParameters) { var viewConfiguration = ConvertSecureStringToViewConfiguration(base64SecureConfiguration); var dataAdapterDependencies = new PortalConfigurationDataAdapterDependencies(requestContext: Request.RequestContext, portalName: viewConfiguration.PortalName); var viewDataAdapter = new ViewDataAdapter(viewConfiguration, dataAdapterDependencies, 1, null, sortExpression, null, null, customParameters: customParameters); return(viewDataAdapter.FetchEntities()); }
public DataTable Select(int startRowIndex, int maximumRows = -1, Configuration configuration = null) { if (configuration == null) { throw new ApplicationException("Invalid ViewObjectDataSource configuration. Please set the Configuration property"); } if (configuration.ViewConfigurations == null || !configuration.ViewConfigurations.Any()) { throw new ApplicationException("Invalid ViewObjectDataSource configuration. Please set the Configuration property"); } var serviceContext = PortalCrmConfigurationManager.CreateServiceContext(configuration.PortalName); var viewParameterValue = HttpContext.Current.Request[configuration.ViewQueryStringParameterName]; Guid selectedViewId; Guid.TryParse(viewParameterValue ?? string.Empty, out selectedViewId); var currentViewConfiguration = GetCurrentViewConfiguration(configuration, selectedViewId); var view = currentViewConfiguration.GetEntityView(configuration.Views); var pageParameterValue = HttpContext.Current.Request[currentViewConfiguration.PageQueryStringParameterName]; var searchParameterValue = HttpContext.Current.Request[currentViewConfiguration.Search.SearchQueryStringParameterName]; var sortParameterValue = HttpContext.Current.Request[currentViewConfiguration.SortQueryStringParameterName]; var filterParameterValue = HttpContext.Current.Request[currentViewConfiguration.FilterQueryStringParameterName]; var metadataFilterParameterValue = HttpContext.Current.Request[currentViewConfiguration.FilterSettings.FilterQueryStringParameterName]; var pageNumber = 1; if (!string.IsNullOrEmpty(pageParameterValue)) { int.TryParse(pageParameterValue, out pageNumber); } var viewDataAdapter = new ViewDataAdapter(currentViewConfiguration, new PortalConfigurationDataAdapterDependencies(configuration.PortalName), pageNumber, searchParameterValue, sortParameterValue, filterParameterValue, metadataFilterParameterValue); var result = viewDataAdapter.FetchEntities(); var records = result.Records; TotalRecordCount = result.TotalRecordCount; return(records.ToDataTable(serviceContext, view.SavedQuery, false, "r", CultureInfo.InvariantCulture)); }
private IActivityCollection FetchActivities(EntityReference regarding, int page = 1, int pageSize = DefaultMaxPageSize, EntityMetadata entityMetadata = null) { var viewConfiguration = new ViewConfiguration("activitypointer", "savedqueryid", PortalTimelineSavedQueryId, pageSize); viewConfiguration.EnableEntityPermissions = true; var viewAdapter = new ViewDataAdapter(viewConfiguration, _dependencies, page, filter: regarding.Id.ToString(), regarding: regarding); viewAdapter.FilterCollection.Add(new Filter { Type = LogicalOperator.And, Conditions = new List <Condition> { new Condition("regardingobjectid", ConditionOperator.Equal, regarding.Id) } }); var activityPointerCollection = viewAdapter.FetchEntities(); var activities = activityPointerCollection.Records.Select(activityPointer => new Activity(activityPointer, regarding)); return(new ActivityCollection(activities, activityPointerCollection.TotalRecordCount)); }