| File: ServiceLookup\ServiceCallSite.cs | Web Access |
| Project: src\runtime\src\libraries\Microsoft.Extensions.DependencyInjection\src\Microsoft.Extensions.DependencyInjection.csproj (Microsoft.Extensions.DependencyInjection) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System; namespace Microsoft.Extensions.DependencyInjection.ServiceLookup { /// <summary> /// Summary description for ServiceCallSite /// </summary> internal abstract class ServiceCallSite { protected ServiceCallSite(ResultCache cache, object? key) { Cache = cache; Key = key; } public abstract Type ServiceType { get; } public abstract Type? ImplementationType { get; } public abstract CallSiteKind Kind { get; } public ResultCache Cache { get; } public object? Value { get; set; } public object? Key { get; } public bool CaptureDisposable => ImplementationType == null || typeof(IDisposable).IsAssignableFrom(ImplementationType) || typeof(IAsyncDisposable).IsAssignableFrom(ImplementationType); } }