using Microsoft.Extensions.DependencyInjection; using System; namespace FastGithub { /// /// 表示服务特性 /// [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] public sealed class ServiceAttribute : Attribute { /// /// 获取服务的生命周期 /// public ServiceLifetime Lifetime { get; } /// /// 获取或设置注册的服务类型 /// 为null直接使得当前类型 /// public Type? ServiceType { get; set; } /// /// 将当前实现类型注册为服务的特性 /// /// 生命周期 public ServiceAttribute(ServiceLifetime lifetime) { Lifetime = lifetime; } } }