Tôi có thể kiểm tra xem một loại đã được đăng ký trong vùng chứa Unity mà không yêu cầu Giải quyết và bẫy ngoại lệ không?Kiểm tra xem một Loại đã được đăng ký trong Unity
Trả lời
Unity 2.0 sẽ có phương thức IsRegistered
mà bạn có thể sử dụng để tìm hiểu xem loại đã được đăng ký trong vùng chứa hay chưa.
Bản Beta1 của Unity 2.0 khả dụng trên Codeplex từ ngày 10 tháng 2. Xem ghi chú phát hành và tải xuống ở đây; http://unity.codeplex.com/wikipage?title=Unity2%20Beta1
UPDATE:
Downloaded và thử nghiệm Unity 2.0 beta 1 trên ngày 27 tháng 2 năm 2010, và đó là bởi sản xuất đến nay đã sẵn sàng chưa. Nếu bạn đang sử dụng Unity 1.2 ngày hôm nay bạn sẽ phải làm một số công việc lớn để có được Unity 2.0 làm việc vì giao diện IUnityContainer không đầy đủ (?). Vì vậy, nếu bạn muốn có phương pháp IsRegistered ngày nay làm việc, bạn có thể thực hiện một phương pháp khuyến nông như thế này:
public static class UnityContainerExtensions
{
public static bool IsRegistered<T>(this IUnityContainer container)
{
try
{
container.Resolve<T>();
return true;
}
catch
{
return false;
}
}
}
Lưu ý rằng tôi không sử dụng ResolveAll
đây. Lý do cho điều này là ResolveAll
sẽ không trả lại đăng ký mặc định (chưa được đặt tên) như đã nêu trong tài liệu Unity:
Phương pháp này hữu ích nếu bạn đã đăng ký nhiều loại có cùng tên.
Lưu ý rằng phương thức này KHÔNG trả về một cá thể cho đăng ký mặc định (chưa đặt tên).
Tùy chọn duy nhất khác của bạn (hiện tại) là sử dụng ResolveAll<T>()
và liệt kê kết quả.
Nghi ngờ như vậy, cảm ơn – johnc
- 1. Làm cách nào để kiểm tra xem một sự kiện đã được đăng ký, trong .NET?
- 2. Kiểm tra xem bộ chuyển đổi đã được đăng ký chưa
- 3. Tự động kiểm tra tất cả các loại đã đăng ký có thể được giải quyết
- 4. Làm cách nào để kiểm tra xem một dll COM được đăng ký trong C#
- 5. Unity: Không thể đăng ký loại từ assembly khác nhau
- 6. Unity: Đăng ký cùng loại cho hai giao diện
- 7. đăng ký một thể hiện trong cấu hình với Unity
- 8. Kiểm tra xem khóa đăng ký có tồn tại không?
- 9. Tương đương đăng ký trong Unity
- 10. Unity giải quyết các loại chưa được đăng ký như thế nào?
- 11. Kiểm tra xem bộ đệm đã được xả trong R
- 12. Kiểm tra xem các thành phần hình ảnh của Windows đã được cài đặt chưa (đăng ký wic)
- 13. Cách xác định xem một sự kiện đã được đăng ký
- 14. Unity: Thay thế loại đăng ký với loại khác tại thời gian chạy
- 15. Cách để xem tất cả các tệp đã được người dùng kiểm tra trong Visual SourceSafe?
- 16. kiểm tra xem phần tử đã được cuộn lên đầu
- 17. Cách kiểm tra xem segue nào đã được sử dụng
- 18. Kiểm tra xem người dùng đã tồn tại trong drupal
- 19. kiểm tra xem biến môi trường đã được thiết lập
- 20. Kiểm tra xem hằng số đã được xác định chưa
- 21. Kiểm tra xem e-mail đã được nhập đúng chưa
- 22. Cách kiểm tra xem WaitHandle đã được đặt chưa?
- 23. Kiểm tra xem một giá trị có tồn tại trong một danh sách đã được Redis
- 24. Kiểm tra xem tệp javascript đã được tải
- 25. JavaScript - cách kiểm tra xem sự kiện đã được thêm
- 26. Kiểm tra thông tin đăng nhập từ xa và kiểm tra người dùng đã đăng nhập
- 27. Làm cách nào để hủy đăng ký chức năng đã đăng ký trong loại trực tiếp?
- 28. Ví dụ đăng ký Unity và giải quyết
- 29. Đăng ký cùng chức năng chặn và xử lý cuộc gọi Unity cho tất cả các loại đăng ký
- 30. Cách xác định xem nhà cung cấp VFPOLEDB đã được cài đặt/đăng ký chưa?
Cảm ơn bạn đã cập nhật. – johnc