Skip to content

Instantly share code, notes, and snippets.

@peymanmajidi
Last active November 28, 2020 11:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save peymanmajidi/ad50d6d4cbd2bc72635fdc7f49d8f826 to your computer and use it in GitHub Desktop.
Save peymanmajidi/ad50d6d4cbd2bc72635fdc7f49d8f826 to your computer and use it in GitHub Desktop.
DotNet Core Dependency Injection in Console App
private static ParcelsRepository _parcelsRepository;
static void Main(string[] args)
{
var configuration = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build();
var cn = configuration.GetConnectionString("CrossbeltDataContext");
var options = new DbContextOptionsBuilder<CrossbeltDataContext>();
options.UseSqlServer(cn);
var services = new ServiceCollection();
services.AddTransient<IParcelsRepository, ParcelsRepository>();
services.AddTransient<IGatesRepository, GatesRepository>();
services.AddTransient<ISortedParcelsRepository, SortedParcelsRepository>();
services.AddDbContext<CrossbeltDataContext>(options => options.UseSqlServer(cn));
var serviceProvider = services.BuildServiceProvider();
var _parcelsRepository = serviceProvider.GetService<IParcelsRepository>();
var _db = serviceProvider.GetService<CrossbeltDataContext>();
}
@peymanmajidi
Copy link
Author

Microsoft.Extensions.Configuration.Json
The AddJsonFile extension methods come from the Microsoft.Extensions.Configuration.Json NuGet package.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment