Devexpress XPO类的复杂规则

Devexpress XPO类的复杂规则,devexpress,xaf,xpo,Devexpress,Xaf,Xpo,我想为XPO类完成一个简单的规则 情况如下: -我有一个车辆等级: public class Vehicle : BaseObject { public Vehicle(Session session) : base(session) { } public override void AfterConstruction() { base.AfterConstruction(); } //...propert

我想为XPO类完成一个简单的规则

情况如下: -我有一个车辆等级:

public class Vehicle : BaseObject
{
    public Vehicle(Session session)
        : base(session)
    {
    }
    public override void AfterConstruction()
    {
        base.AfterConstruction();
    }

    //...properties

    [Association, DevExpress.Xpo.Aggregated]
    public XPCollection<MeterEntry> MeterEntries
    {
        get { return GetCollection<MeterEntry>("MeterEntries"); }
    }

}
}

我试过这个规则:

RuleCriteria("MeterValue >= Vehicle.MeterEntries[Date <=  xxx ].Max(MeterValue)")]

在xxx中,我想要当前对象的日期smtng的值,比如:TargetObject.Date,但它不起作用,有什么想法吗?

您需要使用^字符

RuleCriteria("MeterValue >= Vehicle.MeterEntries[Date <= ^.^.Date].Max(MeterValue)")]

有关父关系遍历运算符的详细信息,请访问:

我找到了另一个解决方案,而不是使用^I used'@This.Date'
RuleCriteria("MeterValue >= Vehicle.MeterEntries[Date <= ^.^.Date].Max(MeterValue)")]