我们已经找到了如何根据"订单"对属性进行排序。 attribute
但是有没有办法对属性进行排序而无需输入" Order"在他们。我想要一个属性" EndOfList"或者"最后"这将说明最后排序。因此,我不必使用Orders使代码混乱。
答案 0 :(得分:0)
好的,我明白了。
我们可以改变属性类。
public class Items : Attribute
{
public bool Last { get; set; }
public Items(bool last = false)
{
this.Last = last;
}
}
然后改变主要类
public class client
{
[Items]
public string fName { get; set; }
[Items(true)]
public string lName { get; set; }
[Items]
public string mName { get; set; }
}
然后改变排序
var sorted = properties
.OrderBy(p => ((Items)p.GetCustomAttributes(true)
.FirstOrDefault(a => a is Items)).Last);