# Conflicts: # build/NuSpecs/UmbracoCms.Web.nuspec # src/SolutionInfo.cs # src/Umbraco.Core/Compose/RelateOnTrashComponent.cs # src/Umbraco.Core/Composing/Current.cs # src/Umbraco.Core/Constants-AppSettings.cs # src/Umbraco.Core/Constants-SqlTemplates.cs # src/Umbraco.Core/Dashboards/ContentDashboardSettings.cs # src/Umbraco.Core/Dashboards/IContentDashboardSettings.cs # src/Umbraco.Core/Extensions/PublishedPropertyExtension.cs # src/Umbraco.Core/HealthChecks/Checks/Services/SmtpCheck.cs # src/Umbraco.Core/Models/IReadOnlyContentBase.cs # src/Umbraco.Core/Models/Mapping/MemberTabsAndPropertiesMapper.cs # src/Umbraco.Core/Models/Mapping/UserMapDefinition.cs # src/Umbraco.Core/Models/ReadOnlyContentBaseAdapter.cs # src/Umbraco.Core/Persistence/NPocoDatabaseExtensions-Bulk.cs # src/Umbraco.Core/PropertyEditors/IPropertyCacheCompression.cs # src/Umbraco.Core/PropertyEditors/IPropertyCacheCompressionOptions.cs # src/Umbraco.Core/PropertyEditors/MediaPicker3Configuration.cs # src/Umbraco.Core/PropertyEditors/NoopPropertyCacheCompressionOptions.cs # src/Umbraco.Core/PropertyEditors/PropertyCacheCompression.cs # src/Umbraco.Core/Routing/UrlProviderExtensions.cs # src/Umbraco.Core/Runtime/CoreRuntime.cs # src/Umbraco.Core/Services/ILocalizedTextService.cs # src/Umbraco.Core/Services/LocalizedTextServiceExtensions.cs # src/Umbraco.Examine.Lucene/BackOfficeExamineSearcher.cs # src/Umbraco.Examine/UmbracoContentIndex.cs # src/Umbraco.Infrastructure/Examine/GenericIndexDiagnostics.cs # src/Umbraco.Infrastructure/IPublishedContentQuery.cs # src/Umbraco.Infrastructure/Migrations/Upgrade/UmbracoPlan.cs # src/Umbraco.Infrastructure/Models/MediaWithCrops.cs # src/Umbraco.Infrastructure/Persistence/NPocoDatabaseExtensions.cs # src/Umbraco.Infrastructure/Persistence/UmbracoDatabase.cs # src/Umbraco.Infrastructure/PropertyEditors/ImageCropperConfiguration.cs # src/Umbraco.Infrastructure/PropertyEditors/MediaPicker3PropertyEditor.cs # src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs # src/Umbraco.Infrastructure/PropertyEditors/UploadFileTypeValidator.cs # src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/ImageCropperValue.cs # src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/MediaPickerWithCropsValueConverter.cs # src/Umbraco.Infrastructure/PublishedContentQuery.cs # src/Umbraco.Infrastructure/Search/UmbracoTreeSearcherFields.cs # src/Umbraco.Infrastructure/Services/Implement/LocalizedTextService.cs # src/Umbraco.Persistence.SqlCe/SqlCeSyntaxProvider.cs # src/Umbraco.PublishedCache.NuCache/DataSource/BTree.DictionaryOfPropertyDataSerializer.cs # src/Umbraco.PublishedCache.NuCache/DataSource/BTree.cs # src/Umbraco.PublishedCache.NuCache/DataSource/ContentData.cs # src/Umbraco.PublishedCache.NuCache/DataSource/ContentSourceDto.cs # src/Umbraco.PublishedCache.NuCache/DataSource/PropertyData.cs # src/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/ContentTypeServiceVariantsTests.cs # src/Umbraco.Tests.UnitTests/Umbraco.Web.Common/ImageCropperTest.cs # src/Umbraco.Tests/App.config # src/Umbraco.Tests/Models/Mapping/ContentWebModelMappingTests.cs # src/Umbraco.Tests/PublishedContent/NuCacheChildrenTests.cs # src/Umbraco.Tests/PublishedContent/NuCacheTests.cs # src/Umbraco.Tests/Scoping/ScopedNuCacheTests.cs # src/Umbraco.Web.BackOffice/Controllers/CodeFileController.cs # src/Umbraco.Web.BackOffice/Controllers/ContentController.cs # src/Umbraco.Web.BackOffice/Controllers/ContentTypeControllerBase.cs # src/Umbraco.Web.BackOffice/Controllers/DashboardController.cs # src/Umbraco.Web.BackOffice/Controllers/DataTypeController.cs # src/Umbraco.Web.BackOffice/Controllers/MediaController.cs # src/Umbraco.Web.BackOffice/Controllers/PackageInstallController.cs # src/Umbraco.Web.BackOffice/Controllers/TemplateQueryController.cs # src/Umbraco.Web.BackOffice/Mapping/ContentMapDefinition.cs # src/Umbraco.Web.BackOffice/Trees/ContentTreeControllerBase.cs # src/Umbraco.Web.BackOffice/Trees/DataTypeTreeController.cs # src/Umbraco.Web.BackOffice/Trees/MediaTypeTreeController.cs # src/Umbraco.Web.Common/Extensions/FriendlyImageCropperTemplateExtensions.cs # src/Umbraco.Web.Common/Extensions/ImageCropperTemplateCoreExtensions.cs # src/Umbraco.Web.Common/Macros/MacroRenderer.cs # src/Umbraco.Web.UI.NetCore/umbraco/config/lang/da.xml # src/Umbraco.Web.UI/Umbraco/config/lang/it.xml # src/Umbraco.Web.UI/web.Template.Debug.config # src/Umbraco.Web.UI/web.Template.config # src/Umbraco.Web/Compose/NotificationsComponent.cs # src/Umbraco.Web/Composing/ModuleInjector.cs # src/Umbraco.Web/Editors/AuthenticationController.cs # src/Umbraco.Web/Editors/BackOfficeController.cs # src/Umbraco.Web/Editors/ContentTypeController.cs # src/Umbraco.Web/Editors/CurrentUserController.cs # src/Umbraco.Web/Editors/DictionaryController.cs # src/Umbraco.Web/Editors/MediaTypeController.cs # src/Umbraco.Web/Editors/MemberController.cs # src/Umbraco.Web/Editors/MemberGroupController.cs # src/Umbraco.Web/Editors/MemberTypeController.cs # src/Umbraco.Web/Editors/NuCacheStatusController.cs # src/Umbraco.Web/Editors/UserGroupsController.cs # src/Umbraco.Web/Editors/UsersController.cs # src/Umbraco.Web/HealthCheck/Checks/Config/AbstractConfigCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Config/CompilationDebugCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Config/ConfigurationService.cs # src/Umbraco.Web/HealthCheck/Checks/Config/CustomErrorsCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Config/MacroErrorsCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Config/NotificationEmailCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Config/TraceCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Config/TrySkipIisCustomErrorsCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Permissions/FolderAndFilePermissionsCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Security/BaseHttpHeaderCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Security/ExcessiveHeadersCheck.cs # src/Umbraco.Web/HealthCheck/Checks/Security/HttpsCheck.cs # src/Umbraco.Web/HealthCheck/NotificationMethods/EmailNotificationMethod.cs # src/Umbraco.Web/Models/Trees/MenuItemList.cs # src/Umbraco.Web/PublishedCache/NuCache/DataSource/ContentCacheDataModel.cs # src/Umbraco.Web/PublishedCache/NuCache/DataSource/DatabaseDataSource.cs # src/Umbraco.Web/PublishedCache/NuCache/DataSource/SerializerBase.cs # src/Umbraco.Web/PublishedCache/NuCache/NuCacheComposer.cs # src/Umbraco.Web/Runtime/WebRuntime.cs # src/Umbraco.Web/Search/ExamineComponent.cs # src/Umbraco.Web/Trees/ApplicationTreeController.cs # src/Umbraco.Web/Trees/MemberTreeController.cs # src/Umbraco.Web/UrlHelperRenderExtensions.cs
124 lines
6.5 KiB
C#
124 lines
6.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Xml.XPath;
|
|
using Examine.Search;
|
|
using Umbraco.Cms.Core.Models.PublishedContent;
|
|
using Umbraco.Cms.Core.Xml;
|
|
|
|
namespace Umbraco.Cms.Core
|
|
{
|
|
/// <summary>
|
|
/// Query methods used for accessing strongly typed content in templates
|
|
/// </summary>
|
|
public interface IPublishedContentQuery
|
|
{
|
|
IPublishedContent Content(int id);
|
|
IPublishedContent Content(Guid id);
|
|
IPublishedContent Content(Udi id);
|
|
IPublishedContent Content(object id);
|
|
IPublishedContent ContentSingleAtXPath(string xpath, params XPathVariable[] vars);
|
|
IEnumerable<IPublishedContent> Content(IEnumerable<int> ids);
|
|
IEnumerable<IPublishedContent> Content(IEnumerable<Guid> ids);
|
|
|
|
IEnumerable<IPublishedContent> Content(IEnumerable<object> ids);
|
|
IEnumerable<IPublishedContent> ContentAtXPath(string xpath, params XPathVariable[] vars);
|
|
IEnumerable<IPublishedContent> ContentAtXPath(XPathExpression xpath, params XPathVariable[] vars);
|
|
IEnumerable<IPublishedContent> ContentAtRoot();
|
|
|
|
IPublishedContent Media(int id);
|
|
IPublishedContent Media(Guid id);
|
|
IPublishedContent Media(Udi id);
|
|
|
|
IPublishedContent Media(object id);
|
|
IEnumerable<IPublishedContent> Media(IEnumerable<int> ids);
|
|
IEnumerable<IPublishedContent> Media(IEnumerable<object> ids);
|
|
IEnumerable<IPublishedContent> Media(IEnumerable<Guid> ids);
|
|
IEnumerable<IPublishedContent> MediaAtRoot();
|
|
|
|
/// <summary>
|
|
/// Searches content.
|
|
/// </summary>
|
|
/// <param name="term">The term to search.</param>
|
|
/// <param name="skip">The amount of results to skip.</param>
|
|
/// <param name="take">The amount of results to take/return.</param>
|
|
/// <param name="totalRecords">The total amount of records.</param>
|
|
/// <param name="culture">The culture (defaults to a culture insensitive search).</param>
|
|
/// <param name="indexName">The name of the index to search (defaults to <see cref="Constants.UmbracoIndexes.ExternalIndexName" />).</param>
|
|
/// <param name="loadedFields">The fields to load in the results of the search (defaults to all fields loaded).</param>
|
|
/// <returns>
|
|
/// The search results.
|
|
/// </returns>
|
|
/// <remarks>
|
|
/// <para>
|
|
/// When the <paramref name="culture" /> is not specified or is *, all cultures are searched.
|
|
/// To search for only invariant documents and fields use null.
|
|
/// When searching on a specific culture, all culture specific fields are searched for the provided culture and all invariant fields for all documents.
|
|
/// </para>
|
|
/// <para>While enumerating results, the ambient culture is changed to be the searched culture.</para>
|
|
/// </remarks>
|
|
IEnumerable<PublishedSearchResult> Search(string term, int skip, int take, out long totalRecords, string culture = "*", string indexName = Constants.UmbracoIndexes.ExternalIndexName, ISet<string> loadedFields = null);
|
|
|
|
/// <summary>
|
|
/// Searches content.
|
|
/// </summary>
|
|
/// <param name="term">The term to search.</param>
|
|
/// <param name="culture">The culture (defaults to a culture insensitive search).</param>
|
|
/// <param name="indexName">The name of the index to search (defaults to <see cref="Cms.Core.Constants.UmbracoIndexes.ExternalIndexName" />).</param>
|
|
/// <returns>
|
|
/// The search results.
|
|
/// </returns>
|
|
/// <remarks>
|
|
/// <para>
|
|
/// When the <paramref name="culture" /> is not specified or is *, all cultures are searched.
|
|
/// To search for only invariant documents and fields use null.
|
|
/// When searching on a specific culture, all culture specific fields are searched for the provided culture and all invariant fields for all documents.
|
|
/// </para>
|
|
/// <para>While enumerating results, the ambient culture is changed to be the searched culture.</para>
|
|
/// </remarks>
|
|
IEnumerable<PublishedSearchResult> Search(string term, string culture = "*", string indexName = Constants.UmbracoIndexes.ExternalIndexName);
|
|
|
|
/// <summary>
|
|
/// Searches content.
|
|
/// </summary>
|
|
/// <param name="term">The term to search.</param>
|
|
/// <param name="skip">The amount of results to skip.</param>
|
|
/// <param name="take">The amount of results to take/return.</param>
|
|
/// <param name="totalRecords">The total amount of records.</param>
|
|
/// <param name="culture">The culture (defaults to a culture insensitive search).</param>
|
|
/// <param name="indexName">The name of the index to search (defaults to <see cref="Constants.UmbracoIndexes.ExternalIndexName" />).</param>
|
|
/// <returns>
|
|
/// The search results.
|
|
/// </returns>
|
|
/// <remarks>
|
|
/// <para>
|
|
/// When the <paramref name="culture" /> is not specified or is *, all cultures are searched.
|
|
/// To search for only invariant documents and fields use null.
|
|
/// When searching on a specific culture, all culture specific fields are searched for the provided culture and all invariant fields for all documents.
|
|
/// </para>
|
|
/// <para>While enumerating results, the ambient culture is changed to be the searched culture.</para>
|
|
/// </remarks>
|
|
IEnumerable<PublishedSearchResult> Search(string term, int skip, int take, out long totalRecords, string culture = "*", string indexName = Constants.UmbracoIndexes.ExternalIndexName);
|
|
|
|
/// <summary>
|
|
/// Executes the query and converts the results to <see cref="PublishedSearchResult" />.
|
|
/// </summary>
|
|
/// <param name="query">The query.</param>
|
|
/// <returns>
|
|
/// The search results.
|
|
/// </returns>
|
|
IEnumerable<PublishedSearchResult> Search(IQueryExecutor query);
|
|
|
|
/// <summary>
|
|
/// Executes the query and converts the results to <see cref="PublishedSearchResult" />.
|
|
/// </summary>
|
|
/// <param name="query">The query.</param>
|
|
/// <param name="skip">The amount of results to skip.</param>
|
|
/// <param name="take">The amount of results to take/return.</param>
|
|
/// <param name="totalRecords">The total amount of records.</param>
|
|
/// <returns>
|
|
/// The search results.
|
|
/// </returns>
|
|
IEnumerable<PublishedSearchResult> Search(IQueryExecutor query, int skip, int take, out long totalRecords);
|
|
}
|
|
}
|