誰かがここで提供される方向ハリル・カルカン(@hikalkan)から発展でした:https://github.com/volosoft/castle-windsor-ms-adapter城ウィンザー女史アダプタコア2.0実装
ORIGINAL - 動作しません - NEWは
public void ConfigureServices(IServiceCollection services)
{
services.AddAutoMapper();
services.AddMvc();
services.AddApiVersioning();
services.AddDbContextPool<CIDMSContext>(options => options.UseSqlServer(""));
services.AddScoped<IBuildingRepository, BuildingRepository>();
services.AddScoped<IComponentRepository, ComponentRepository>();
}
標準のMicrosoft DIを使用して動作します。 Castle.Windsor.MsDependencyInjection
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddAutoMapper();
services.AddMvc();
services.AddApiVersioning();
services.AddDbContextPool<CIDMSContext>(options => options.UseSqlServer(""));
//services.AddScoped<IBuildingRepository, BuildingRepository>();
//services.AddScoped<IComponentRepository, ComponentRepository>();
return WindsorRegistrationHelper.CreateServiceProvider(
new WindsorContainer(), services);
}
を使用しようと、私はエラーを取得しています:
Unable to resolve service for type '...Repositories.Buildings.IBuildingRepository' while attempting to activate ...Controllers.BuildingController'
私の究極の目標は、DIに私が今までに作成するすべての単一のリポジトリを持っていないことです。コンベンションでキャッスルウィンザーをDIにしたいと思います。 .Net Core 2.0のためにこれを行うための他のオプションがある場合は、それらのオプションも公開しています。
私は、Visual Studio 15.4.1。ネットコア2.0 APIプロジェクトを使用しています。
BuildingControllerのコンストラクタコードを提供してください – itikhomi
誰かがダウン投票の理由を詳しく説明できますか? – Ben