我有一个非常复杂的类的实例,其中List
类型的相同属性应限制,并且应更改最后一项。< / p>
为了实现这一点,我创建了一个名为RangeLimitAttribute
的属性,其中包含消息的限制,消息和属性。
但如何从我的对象获取此属性的List
递归的所有实例?
public class RangeLimitAttribute : Attribute
{
public RangeLimitAttribute(int maxCount, string message, string messagePropertyname)
{
MaxCount = maxCount;
this.Message = message;
this.MessagePropertyname = messagePropertyname;
}
public string MessagePropertyname { get; set; }
public string Message { get; set; }
public int MaxCount { get; set; }
}
示例类:
public class Class
{
[XmlAttribute("DisplayNameXYZ")]
public string DisplayName { get; set; }
[XmlAttribute("ErrorsXYZ")]
[RangeLimit(100, "... more Errors", "Message")]
public List<NestedClass> Errors { get; set; }
}
public class NestedClass
{
[XmlAttribute("MessageXYZ")]
public string Message { get; set; }
[XmlElement("FilesXYZ")]
[RangeLimit(100, "... more Errors", "OtherProperty")]
public List<File> Files { get; set; }
}