2012-04-02 38 views
10

Tôi đang học cách sử dụng tiêm phụ thuộc với ninject. Hầu hết các thuộc tính và phương thức đều khá trực quan, một thuộc tính có mặc dù là Kernel.Inject (ví dụ);Kernel.Inject (ví dụ) là gì; thực sự làm gì?

Phương pháp Tiêm thực sự làm gì khi không trả lại bất kỳ thứ gì. Tôi đã nhìn xung quanh nhưng tìm kiếm một phương pháp được gọi là tiêm vào một container phụ thuộc tiêm là một cơn ác mộng, tôi không thể tìm thấy bất kỳ tài liệu tham khảo cho phương pháp cụ thể.

Trả lời

15

Kernel.Inject(instance) sẽ chèn phụ thuộc vào một đối tượng đã tồn tại.

Đó là lý do tại sao nó trả về khoảng trống vì nó lấy đối tượng tham số đối tượng và bắt đầu điều tra các phương thức và thuộc tính của nó đang tìm thuộc tính [Inject]. Sau đó, nó sẽ gọi cho họ với các trường hợp được giải quyết của các kiểu tham số của họ. (điều này được gọi là Phương pháp hoặc Tiêm tài sản)

Vì vậy, khi tiêm contructor không phải là đủ , bạn có thể Kernel.Inject để điền vào phụ thuộc của bạn cho một trường hợp cụ thể.

Bạn có thể đọc thêm về điều này tại đây: Ninject Injection Patterns

+0

Giải thích đơn giản, Chúc mừng! – deanvmc

+0

Hài kịch typo "tiêm chích". Với Ninject mã của bạn sẽ không đứng đắn! –

+0

@SimonHalsey cảm ơn, đã sửa :) – nemesv

Các vấn đề liên quan