{"id":13486135,"url":"https://github.com/dazinator/Dazinator.Extensions","last_synced_at":"2025-03-27T20:32:09.932Z","repository":{"id":54758429,"uuid":"245710902","full_name":"dazinator/Dazinator.Extensions","owner":"dazinator","description":"Useful additions to Microsoft.Extensions.DependencyInjection such as Named Services.","archived":false,"fork":false,"pushed_at":"2024-10-27T20:54:24.000Z","size":981,"stargazers_count":37,"open_issues_count":3,"forks_count":1,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2024-10-28T00:27:56.713Z","etag":null,"topics":["dependency-injection","microsoft-extensions"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dazinator.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-07T21:52:43.000Z","updated_at":"2024-10-27T20:54:28.000Z","dependencies_parsed_at":"2024-01-14T23:03:14.427Z","dependency_job_id":"89d918a3-3021-48ad-a7cb-fbf387e363ba","html_url":"https://github.com/dazinator/Dazinator.Extensions","commit_stats":{"total_commits":80,"total_committers":4,"mean_commits":20.0,"dds":"0.17500000000000004","last_synced_commit":"502697cc02c0705937e854ef5c3ce3ad278728ac"},"previous_names":["dazinator/dazinator.extensions"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dazinator%2FDazinator.Extensions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dazinator%2FDazinator.Extensions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dazinator%2FDazinator.Extensions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dazinator%2FDazinator.Extensions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dazinator","download_url":"https://codeload.github.com/dazinator/Dazinator.Extensions/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221799187,"owners_count":16882380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dependency-injection","microsoft-extensions"],"created_at":"2024-07-31T18:00:40.242Z","updated_at":"2024-10-30T21:30:56.194Z","avatar_url":"https://github.com/dazinator.png","language":"C#","funding_links":[],"categories":["C#"],"sub_categories":[],"readme":"| Branch  | DevOps |\n| ------------- | ------------- |\n| Master  | [![Build Status](https://darrelltunnell.visualstudio.com/Public%20Projects/_apis/build/status/dazinator.Dazinator.Extensions.DependencyInjection?branchName=master)](https://darrelltunnell.visualstudio.com/Public%20Projects/_build/latest?definitionId=12\u0026branchName=master) |\n| Develop | [![Build Status](https://darrelltunnell.visualstudio.com/Public%20Projects/_apis/build/status/dazinator.Dazinator.Extensions.DependencyInjection?branchName=develop)](https://darrelltunnell.visualstudio.com/Public%20Projects/_build/latest?definitionId=12\u0026branchName=develop) |\n\n| Package  | Stable | Pre-release |\n| ------------- | --- | --- |\n| Dazinator.Extensions.DependencyInjection.Modules  | [![Dazinator.Extensions.DependencyInjection.Modules](https://img.shields.io/nuget/v/Dazinator.Extensions.DependencyInjection.Modules.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.Modules/) | [![Dazinator.Extensions.DependencyInjection.Modules](https://img.shields.io/nuget/vpre/Dazinator.Extensions.DependencyInjection.Modules.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.Modules/) | \n| Dazinator.Extensions.DependencyInjection.NamedServices  | [![Dazinator.Extensions.DependencyInjection.NamedServices](https://img.shields.io/nuget/v/Dazinator.Extensions.DependencyInjection.NamedServices.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.NamedServices/) | [![Dazinator.Extensions.DependencyInjection.NamedServices](https://img.shields.io/nuget/vpre/Dazinator.Extensions.DependencyInjection.NamedServices.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.NamedServices/) | \n| Dazinator.Extensions.DependencyInjection.ChildContainers  | [![Dazinator.Extensions.DependencyInjection.ChildContainers](https://img.shields.io/nuget/v/Dazinator.Extensions.DependencyInjection.ChildContainers.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.ChildContainers/) | [![Dazinator.Extensions.DependencyInjection.ChildContainers](https://img.shields.io/nuget/vpre/Dazinator.Extensions.DependencyInjection.ChildContainers.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.ChildContainers/) | \n| Dazinator.Extensions.DependencyInjection.Microsoft | [![Dazinator.Extensions.DependencyInjection.Microsoft](https://img.shields.io/nuget/v/Dazinator.Extensions.DependencyInjection.Microsoft.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.Microsoft/) | [![Dazinator.Extensions.DependencyInjection.Microsoft](https://img.shields.io/nuget/vpre/Dazinator.Extensions.DependencyInjection.Microsoft.svg)](https://www.nuget.org/packages/Dazinator.Extensions.DependencyInjection.Microsoft/) | \n\n## Intro\n\nThis repository builds on `Microsoft.Extensions.DependencyInjection.Abstractions` to provide additional features, which currently are:\n\n- Named Services\n- Child Containers\n\nIt also provides a seperate (and optional) nuget package called `Dazinator.Extensions.DependencyInjection.Microsoft` which basically contains a copy of the native MS `ServiceProvider` but with some changes as published here: https://github.com/dotnet/runtime/issues/45497\n\n## Named Services\n\nAllows you to register services that can be resolved by name.\nNote: In dotnet 8, microsoft have now added a feature to allow you to resolve services by name. However if you are using dotnet 6 or below, you can use this package to achieve the same thing.\n\nFor more detailed docs [see here](./src/DependencyInjection.NamedServices/README.md)\n\n## Modules\n\nAllows you to define modules that can be used to configure services in a modular way.\nFor more detailed docs [see here](./src/DependencyInjection.Modules/README.md)\n\n## Child Containers\n\nFor more detailed docs [see here](./src/DependencyInjection.ChildContainers/README.md)\n\nAllows you to configure \"child containers\" using the normal `IServiceCollection` interface.\nThe child service provider can be implemented by your `conforming container` of choice i.e Autofac, Structuremap, Microsoft DI - any DI package that supports IServiceProvider.\n\nIt means, thanks to a standard interface for building / configuring child containers, you can take a DI container library that doesn't have a child container feature,\n(like I did with Microsofts) and create \"child containers\" with it! The caveat is that:\n\n    - Your DI container of choice must support building a container from an `IServiceCollection` or IEnumerable\u003cServiceDescriptor\u003e`\n    \nIf you are interested in that, look at the tests for `ChildServiceCollection`\n\nFor docs, [see here](./src/DependencyInjection.ChildContainers/README.md)\n\n\n## Pipelines\n\nBuild composable, inspectable execution pipelines with dependency injection support.\nFor more detailed docs [see here](./src/Pipelines/README.md)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdazinator%2FDazinator.Extensions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdazinator%2FDazinator.Extensions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdazinator%2FDazinator.Extensions/lists"}