Esempio n. 1
0
        /// <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);
        }
Esempio n. 2
0
        /// <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);
        }