Trong .net, có cách nào sử dụng phản chiếu để xác định xem tham số trên phương thức có được đánh dấu bằng từ khóa "params" không?.net phản ánh và từ khóa "params"
10
A
Trả lời
17
Kiểm tra xem liệu cuối cùng ParameterInfo có áp dụng ParamArrayAttribute cho nó hay không.
22
Kiểm tra để xem nếu ParamArrayAttribute
đã được áp dụng cho các đối tượng ParameterInfo
:
//use string.Format(str, args) as a test
var method = typeof(string).GetMethod("Format", new[] {typeof(string), typeof(object[])});
var param = method.GetParameters()[1];
Console.WriteLine(Attribute.IsDefined(param, typeof(ParamArrayAttribute)));
Các vấn đề liên quan
- 1. Quá tải, suy luận kiểu chung và từ khóa 'params'
- 2. Dynamic Lang. Thời gian chạy và phản ánh
- 3. (Tại sao) Phản ánh quá đắt trong .Net?
- 4. Làm thế nào để gọi các phương pháp với ref params ra/sử dụng phản ánh
- 5. Phản ánh liên tục tính/trường trong .net
- 6. Tại sao từ khóa params không theo ngữ cảnh?
- 7. Chính xác từ khóa 'params' hoạt động như thế nào?
- 8. Phản ánh và loại chuyển đổi Python
- 9. Java bằng(): để phản ánh hoặc không phản ánh
- 10. Phản ánh trên Java
- 11. Khung thực thể - Phản ánh về các khóa và mối quan hệ nước ngoài
- 12. Một hướng dẫn tốt và đầy đủ về phản ánh trong .NET?
- 13. Phản ánh trong C++
- 14. Phản ánh trong PLSQL?
- 15. phản ánh scala: getDeclaringTrait?
- 16. Các thông số được đặt tên và từ khóa params trong C#
- 17. Gọi [int index] này qua phản ánh
- 18. Sự phản ánh và điều hành quá tải trong C#
- 19. Scala: đặt giá trị trường phản ánh từ tên trường
- 20. Phản ánh C#: Nếu ... khác?
- 21. .NET sử dụng khối và trả lại; từ khóa
- 22. C#: Phản ánh enum tên
- 23. .htaccess và params
- 24. AddEventHandler sử dụng phản ánh
- 25. Nhà máy Phương pháp - trường hợp và phản ánh
- 26. Sử dụng từ khóa "params" cho các tham số chung trong C#
- 27. Sự khác biệt giữa phản ánh ComponentModel (ví dụ: PropertyDescriptor) và phản ánh tiêu chuẩn (ví dụ: PropertyInfo)?
- 28. Các nhà xây dựng và phản ánh chung
- 29. Phản ánh Java và nỗi đau trong Refactoring
- 30. Cast thông qua phản ánh và sử dụng Class.cast()
Đã nói, và sử dụng Attribute.IsDefined để thay thế. – leppie