Mục tiêu của tôi là tạo hàm tiêm một mảng các đối tượng thực hiện một giao diện.Tiêm mảng với Unity
Sau đây là cách tôi hiện có.
Container
.RegisterInstance<Company>(ParseCompany(args[1])
.RegisterInstance<eTargets>(ParseTargets(args[2]))
.RegisterInstance<ILoader[]>(new ILoader[] {
Container.Resolve<CustomerLoader>(),
Container.Resolve<PaymentLoader(),
Container.Resolve<InvoiceLoader()
});
Có phải điển hình để gọi Giải quyết trong cấu hình vùng chứa theo cách này hoặc có cách nào tiêu chuẩn hơn để thực hiện điều tương tự không?
wow, đó là một mẹo tuyệt vời nhờ –
Không chính xác không thể dò được: lý do là, nếu bạn cần nhiều hơn một mục nhập cho cùng loại, sau đó bạn phải thêm một tên khác Unity sẽ nghĩ rằng bạn đang thực sự trọng mục nhập trước đó (bị cấm). –
@BrunoBrant 'unfathomable' vì không có DI Container nào hoạt động như thế. Xem ví dụ [cuốn sách của tôi] (http://amzn.to/12p90MG) để biết thêm chi tiết. –