我正在尝试获取当前缓存,这使我无效。在下面的代码中,cc的值为null。谁能让我知道我在这里做错了什么?
public class SpCaseNewEntryExtension : PXGraphExtension<SPCaseNewEntry>
{
protected PXGraph _Graph = null;
public class CRCaseClassIDSelectorAttribute : PXCustomSelectorAttribute
{
public override void CacheAttached(PXCache sender)
{
_Graph = sender.Graph;
base.CacheAttached(sender);
}
public CRCaseClassIDSelectorAttribute()
: base(typeof(CRCase.caseClassID))
{
this.DescriptionField = typeof(CRCaseClass.description);
}
protected virtual IEnumerable GetRecords()
{
CRCase cc = ((CRCase)_Graph.Caches[typeof(CRCase)].Current);
foreach (PXResult<CRCaseClass> pc in PXSelectJoinGroupBy<CRCaseClass, InnerJoin<CaseContract, On<CaseContract.caseClassID, Equal<CRCaseClass.caseClassID>>,
InnerJoin<Contract, On<CaseContract.contractID, Equal<Contract.templateID>>,
InnerJoin<CRCase, On<Contract.contractID, Equal<Current<CRCase.contractID>>>>>>,
Where<CaseContract.active, Equal<True>>,
Aggregate<GroupBy<CRCaseClass.caseClassID>>>.Select(this._Graph))
{
yield return pc;
}
}