tôi có thể hỏi này không chính xác, nhưng có thể/làm thế nào bạn có thể tìm thấy các lĩnh vực trên một lớp bên trong nó ... ví dụ ...C# Reflection: Finding Thuộc tính trên Dòng Member
public class HtmlPart {
public void Render() {
//this.GetType().GetCustomAttributes(typeof(OptionalAttribute), false);
}
}
public class HtmlForm {
private HtmlPart _FirstPart = new HtmlPart();
[Optional] //<-- how do I find that?
private HtmlPart _SecondPart = new HtmlPart();
}
Hoặc có lẽ tôi chỉ làm điều này không chính xác ... Làm thế nào tôi có thể gọi một phương pháp và sau đó kiểm tra các thuộc tính áp dụng cho chính nó?
Ngoài ra, vì lợi ích của câu hỏi - Tôi chỉ tò mò nếu có thể tìm thông tin thuộc tính mà không biết/truy cập lớp cha!
Cảm ơn - Nó có vẻ là 'có thể', nhưng sau đó một lần nữa tôi figured có chỉ là đủ mất tích mà nó không thể làm việc. – Hugoware
Không, phương pháp Render hoàn toàn có thể truy cập tốt typeof (HtmlForm) thay vì obj.GetType(), sau đó bạn không cần obj nữa. Tất nhiên, nếu chính HtmlForm là riêng, thì bạn có thể cần phải tìm nó thông qua Assembly.GetExecutingAssembly() GetTypes(). Ở đâu (t =>! T.IsGeneric &&! T.IsNested && t.FullName == "MyNamespace. HtmlForm ") hoặc một cái gì đó như thế. – Timwi