| File: Infrastructure\ActionDescriptorCollectionProvider.cs | Web Access |
| Project: src\aspnetcore\src\Mvc\Mvc.Core\src\Microsoft.AspNetCore.Mvc.Core.csproj (Microsoft.AspNetCore.Mvc.Core) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. #nullable enable using Microsoft.AspNetCore.Mvc.Abstractions; using Microsoft.Extensions.Primitives; namespace Microsoft.AspNetCore.Mvc.Infrastructure; /// <summary> /// A base class for <see cref="IActionDescriptorCollectionProvider"/> which also provides an <see cref="IChangeToken"/> /// for reactive notifications of <see cref="ActionDescriptor"/> changes. /// </summary> /// <remarks> /// <see cref="ActionDescriptorCollectionProvider"/> is used as a base class by the default implementation of /// <see cref="IActionDescriptorCollectionProvider"/>. To retrieve an instance of <see cref="ActionDescriptorCollectionProvider"/>, /// obtain the <see cref="IActionDescriptorCollectionProvider"/> from the dependency injection provider and /// downcast to <see cref="ActionDescriptorCollectionProvider"/>. /// </remarks> public abstract class ActionDescriptorCollectionProvider : IActionDescriptorCollectionProvider { /// <summary> /// Returns the current cached <see cref="ActionDescriptorCollection"/> /// </summary> public abstract ActionDescriptorCollection ActionDescriptors { get; } /// <summary> /// Gets an <see cref="IChangeToken"/> that will be signaled after the <see cref="ActionDescriptors"/> /// collection has changed. /// </summary> /// <returns>The <see cref="IChangeToken"/>.</returns> public abstract IChangeToken GetChangeToken(); }