2014-07-05 19 views
5

Tôi đang làm việc trên một dự án Android với Xamarin và trên đường đi, cũng giống như một bài tập tôi quyết định viết container IoC đơn giản của riêng mình. Bây giờ, tôi quyết định liệu tôi có cần tiêm bất kỳ phụ thuộc nào vào các trường hợp tiêm của tôi hay không. Tôi tìm kiếm Type.GetConstructors, nó nói nó có sẵn trong các dự án PCL, nhưng tôi dường như không thể có được GetConstructors.GetConstructors in Xamarin Thư viện PCL

Tôi có System.Reflection trong mục đích của mình và nếu tôi tạo thư viện Android, tôi có GetConstructor/s có sẵn cho tôi. MSDN documentation chắc chắn nói trong PCL. Có lẽ đây là tôi không hoàn toàn hiểu những gì PCL có nghĩa là trong hệ sinh thái Xamarin, nhưng tôi nghĩ điều đó có nghĩa là nó sẽ được hỗ trợ.

Vì vậy, câu hỏi của tôi là, tôi thiếu một cái gì đó hoặc điều này thực sự chính xác?

CẬP NHẬT

Đối với bất cứ ai muốn để xem làm thế nào tôi đã làm điều này;

https://github.com/tbd-develop/simpletypeprovider

Trả lời

10

Xamarin sử dụng các cấu hình PCL cùng mà Microsoft đã phát hành, nhưng không phải tất cả các cấu PCL hỗ trợ System.Type.GetConstructors().

Có thể bạn sẽ cần phải làm một cái gì đó như thế này (khó có thể nói chắc chắn, bởi vì mỗi hồ sơ PCL có những hạn chế System.Reflection khác nhau):

var info = type.GetTypeInfo(); 
foreach (var ctor in info.DeclaredConstructors) { 
    // find the .ctor you want... 
} 
+0

Thank-you, mà được tôi các nhà thầu. – Hammerstein

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