using HackerNet.Application; using HackerNet.Domain; using HackerNet.Infrastructure.Repositories.Memory; using Microsoft.Extensions.DependencyInjection; namespace HackerNet.Infrastructure.AspNet; public static class ServiceCollectionExtensions { public static IServiceCollection AddHackerNetServices(this IServiceCollection services) { var link = new Link("https://localhost:7050/", "Youhouuu"); var comment = new Comment(link.Id, "Wow!"); var linksRepository = new MemoryLinkRepository(link); var commentsRepository = new MemoryCommentRepository(comment); services.AddSingleton(linksRepository); services.AddSingleton(commentsRepository); services.AddSingleton(new MemoryReadStore(linksRepository, commentsRepository)); services.AddSingleton(); return services; } }