Được đưa ra: Ví dụ System.Type.Cách nhận các phương thức theo loại
Mục đích là để có được những phương pháp mới giới thiệu (tôi không biết từ bên phải) trong các loại, đó là - không được thừa kế - không ghi đè
Tôi muốn sử dụng .NET Reflection và Tôi đã thử phương pháp Type.GetMethods()
. Nhưng, nó trở lại ngay cả những người thừa kế và bị ghi đè.
Tôi đã nghĩ đến việc lọc sau khi nhận tất cả các phương pháp. Và tôi đã xem xét các thuộc tính/phương thức được hiển thị bởi lớp MethodInfo
. Tôi không thể tìm ra cách để có được những gì tôi muốn.
Ví dụ: Tôi có một lớp học, class A { void Foo() { } }
Khi tôi gọi typeof(A).GetMethods()
, tôi nhận được Foo
cùng với các phương pháp trong System.Object
: Equals
, ToString
, GetType
và GetHashCode
. Tôi muốn lọc xuống chỉ Foo
.
Có ai biết cách thực hiện việc này không?
Cảm ơn.
Phương pháp kế thừa và ghi đè thuộc về loại. Tại sao bạn mong đợi họ không được liệt kê? Bạn có thể giải thích những gì bạn đang cố gắng thực hiện không? – asawyer
Tôi đang cố gắng tạo báo cáo cho biết rằng các phương pháp này đã được thêm vào thư viện/sản phẩm mới. Và tôi không muốn liệt kê các phương thức kế thừa/ghi đè vì yêu cầu nghiệp vụ. Chúng phải được báo cáo như là một phần của loại xác định của chúng. – pnvn