/// <summary> /// Gets the data source. /// </summary> protected override void GetDataSource() { if (!this.Page.IsPostBack) { using (ResourceDataAccess resourceAccess = new ResourceDataAccess(base.CreateContext())) { switch (BrowseBy) { case BrowseByCriteria.BrowseByYear: if (!IsSecurityAwareControl) { this._yearRange = resourceAccess.GetYear(null); } else if (this.AuthenticatedToken != null) { this._yearRange = resourceAccess.GetYear(this.AuthenticatedToken); } break; case BrowseByCriteria.BrowseByAuthors: if (!IsSecurityAwareControl) { this._authorList = resourceAccess.GetAuthors(null).ToList(); } else if (this.AuthenticatedToken != null) { this._authorList = resourceAccess.GetAuthors(this.AuthenticatedToken).ToList(); } break; case BrowseByCriteria.BrowseByResourceType: this._resTypeList = resourceAccess.GetResourceTypes().ToList(); _resTypeList = CoreHelper.FilterSecurityResourceTypes(_resTypeList).ToList(); break; case BrowseByCriteria.BrowseByCategoryHierarchy: PopulateRootNodeDropDown(); if (!string.IsNullOrEmpty(RootNodeDropDown.SelectedValue)) { this._rootCategoryNode = resourceAccess.GetCategoryNodeWithHierarchy( new Guid(RootNodeDropDown.SelectedValue)); if (IsSecurityAwareControl && _rootCategoryNode != null) { _authorizedCategoryNodeIds = GetAuthorizedCategoryNodes(AuthenticatedToken, _rootCategoryNode, resourceAccess); } } break; } } } }
private TableRow CreateResourceTypeRow() { TableRow row = new TableRow(); TableCell cell = new TableCell(); cell.HorizontalAlign = HorizontalAlign.Left; cell.Controls.Add(ResourceTypeLabel); row.Cells.Add(cell); cell = new TableCell(); cell.HorizontalAlign = HorizontalAlign.Left; if (!this.DesignMode) { using (ResourceDataAccess resourceDAL = new ResourceDataAccess(CreateContext())) { List <ResourceType> resourceInfoList = resourceDAL.GetResourceTypeList(EntityType) .OrderBy(tuple => tuple.Name).ToList(); resourceInfoList = CoreHelper.FilterSecurityResourceTypes(resourceInfoList).ToList(); if (resourceInfoList.Count > 1) { ResourceType parentResourceType = resourceInfoList .Where(tuple => tuple.Name.Equals(EntityType, StringComparison.OrdinalIgnoreCase)) .First(); ResourceTypeList.Items.Add(new ListItem(GlobalResource.All, parentResourceType.FullName)); } foreach (var item in resourceInfoList) { ResourceTypeList.Items.Add(new ListItem(item.Name, item.FullName)); } if (ResourceTypeList.Items.Count > 0) { using (ResourceDataAccess dataAccess = new ResourceDataAccess(base.CreateContext())) { FilterCriteriaGrid.EntityType = ResourceTypeList.SelectedValue; } } } } cell.Controls.Add(ResourceTypeList); row.Cells.Add(cell); return(row); }