Một cách khác là xem lại mã của bạn. IMHO, Bắt tài sản thông qua Reflection không phải là ý tưởng tốt nhất. Vì vậy, nếu bạn viết lại mã của mình, các thuộc tính đó sẽ được lưu trữ không trong các trường tĩnh, nhưng trong Dictionary<string, string>
. Dưới đây là ví dụ:
public static class MyClass
{
public static readonly Dictionary<string, string> Properites = new Dictionary<string, string>();
public string Property1 { get {return Properties["Property1"];} }
public string Property2 { get {return Properties["Property2"];} }
}
Sau đó bạn có thể gọi nó bằng cách sử MyClass.Property1
hoặc MyClass.Properties["Property1"]
.
Nguồn
2010-12-12 15:37:50
Bạn muốn MyClass.something trả về chuỗi "val" hoặc bạn đang cố gắng lấy giá trị thuộc tính theo tên của nó? Câu hỏi là một chút không rõ ràng, bạn có thể đưa ra một mẫu sử dụng mã? – sprite
Xin lỗi. Tôi không có mã ngay bây giờ, nhưng trả lời cho câu hỏi của bạn, tôi muốn có được một giá trị tài sản theo tên của nó. – hsz