/// <summary> /// Returns a shallow item, instead of the full Sitecore item. /// </summary> /// <remarks> /// This returns a complete item, except for all the fields. /// Excluding the fields greatly enhances performance. /// </remarks> private Item GetItemFromDatabase(Database database, string path, DataProviderMasterDatabase dataProvider) { var definition = dataProvider.GetItemDefinition(new ID(path), null); if (definition == null) { return(null); } var item = new Item(definition.ID, new ItemData(definition, Language.Current, Version.First, new FieldList()), database); return(item); }
/// <summary> /// Returns a shallow item, instead of the full Sitecore item. /// </summary> /// <remarks> /// This returns a complete item, except for all the fields. /// Excluding the fields greatly enhances performance. /// </remarks> protected virtual Item GetItemFromId(ID itemId, DataProviderMasterDatabase dataProvider) { var definition = dataProvider.GetItemDefinition(itemId, null); if (definition == null) { return(null); } var item = new Item(definition.ID, new ItemData(definition, Language.Current, Version.First, new FieldList()), GetMasterDatabase()); return(item); }
/// <summary> /// Returns a shallow item, instead of the full Sitecore item. /// </summary> /// <remarks> /// This returns a complete item, except for all the fields. /// Excluding the fields greatly enhances performance. /// </remarks> protected virtual Item ConvertUiSearchResultItemToActualItem(SitecoreUISearchResultItem searchResultItem, DataProviderMasterDatabase dataProvider) { var uri = searchResultItem.Uri ?? new ItemUri(searchResultItem["_uniqueid"]); var definition = dataProvider.GetItemDefinition(uri.ItemID, null); if (definition == null) { return(null); } var item = new Item(definition.ID, new ItemData(definition, uri.Language, uri.Version, new FieldList()), GetMasterDatabase()); return(item); }