2015-09-01 20 views
6

Tôi không chắc chắn cách thức hoặc nơi để tiêm phụ thuộc vào Ngũ cốc. Đâu là nơi tốt nhất để làm điều này?Tiêm phụ thuộc với Orleans

Nếu không thể, tôi có nên thiết lập vùng chứa trong phương thức WorkerRole.Run và nhận các trường hợp khi tôi cần chúng không?

+0

Dường như [hỗ trợ DI đã được thêm vào Orleans] (https://github.com/dotnet/orleans/issues/669), nhưng chưa có trong bất kỳ phiên bản phát hành nào. – svick

Trả lời

7

Có hỗ trợ giới hạn cho DI trong hạt. Tính năng này đang được hứa hẹn sẽ được phân phối sớm, nhưng như trong 1.0.9 - không có phép xây dựng truyền thống.

Cho đến nay, bạn có thể sử dụng ServiceLocator (chống mẫu) bằng cách sử dụng khung công tác bạn chọn (ví dụ: chúng tôi đang sử dụng Autofac và CommonServiceLocator) để giải quyết các dịch vụ bạn muốn gọi bên trong ví dụ về hạt của bạn.

Đối với kiểm tra đơn vị - có một constructor hạt mà có thể được sử dụng để xây dựng dụ hạt với mocks (xem more details here)

tôi muốn mời bạn đến gitter trò chuyện Orleans (như thông qua liên kết ở trên), nơi bạn có thể xem câu trả lời và thảo luận xung quanh một số câu hỏi khác.

10

Kể từ orleans 1.1.0 phát hành, orleans đội thêm "ASP.NET vNext phong cách Dependency Injection cho hạt", bạn có thể xem ví dụ về điều này trong here

Ngoài ra để xem như thế nào "ASP.NET vNext Dependency Injection" công trình thấy here

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