33
44using System ;
55using Microsoft . Extensions . DependencyInjection ;
6- using Microsoft . Extensions . DependencyInjection . Extensions ;
7- using Microsoft . Extensions . Options ;
86using SixLabors . ImageSharp . Web . Caching ;
97using SixLabors . ImageSharp . Web . Commands ;
108using SixLabors . ImageSharp . Web . Commands . Converters ;
@@ -26,7 +24,15 @@ public static class ServiceCollectionExtensions
2624 /// <param name="services">The <see cref="IServiceCollection" /> to add services to.</param>
2725 /// <returns>An <see cref="IImageSharpBuilder"/> that can be used to further configure the ImageSharp services.</returns>
2826 public static IImageSharpBuilder AddImageSharp ( this IServiceCollection services )
29- => AddImageSharp ( services , _ => { } ) ;
27+ {
28+ Guard . NotNull ( services , nameof ( services ) ) ;
29+
30+ IImageSharpBuilder builder = new ImageSharpBuilder ( services ) ;
31+
32+ AddDefaultServices ( builder ) ;
33+
34+ return builder ;
35+ }
3036
3137 /// <summary>
3238 /// Adds ImageSharp services to the specified <see cref="IServiceCollection" /> with the given options.
@@ -41,21 +47,13 @@ public static IImageSharpBuilder AddImageSharp(
4147 Guard . NotNull ( services , nameof ( services ) ) ;
4248 Guard . NotNull ( setupAction , nameof ( setupAction ) ) ;
4349
44- services . TryAddTransient < IConfigureOptions < ImageSharpMiddlewareOptions > , ImageSharpConfiguration > ( ) ;
45-
46- IImageSharpBuilder builder = new ImageSharpBuilder ( services ) ;
47-
48- AddDefaultServices ( builder , setupAction ) ;
50+ services . Configure ( setupAction ) ;
4951
50- return builder ;
52+ return AddImageSharp ( services ) ;
5153 }
5254
53- private static void AddDefaultServices (
54- IImageSharpBuilder builder ,
55- Action < ImageSharpMiddlewareOptions > setupAction )
55+ private static void AddDefaultServices ( IImageSharpBuilder builder )
5656 {
57- builder . Services . Configure ( setupAction ) ;
58-
5957 builder . Services . AddSingleton < FormatUtilities > ( ) ;
6058
6159 builder . Services . AddSingleton < AsyncKeyReaderWriterLock < string > > ( ) ;
0 commit comments