非永続列の列を並べ替えることができません。 (DevExpress社eXpressAppフレームワーク(XAF)と永続オブジェクト(XPO)を発現する)私のコードここ DevExpress eXpressAppフレームワークとeXpress永続オブジェクト:列の問題をソート
今[Association("PCs-Gs", typeof(Allotments))]
public XPCollection<Allotments> PCs
{
get { return GetCollection<Allotments>("PCs"); }
}
[Association("SCs-Gs", typeof(Allotments))]
public XPCollection<Allotments> SCs
{
get { return GetCollection<Allotments>("SCs"); }
}
XPCollection<Allotments> _allAllotmentsCore;
public XPCollection<Allotments> AllAllotments
{
get
{
if (_allAllotmentsCore == null)
{
_allAllotmentsCore = new XPCollection<Allotments>(Session);
}
_allAllotmentsCore.Criteria = CriteriaOperator.Parse("PCGrower.Oid == ? OR SCGrower.Oid == ?", Oid);
_allAllotmentsCore.Sorting.Add(new SortProperty("Project.ProjectName", SortingDirection.Descending));
PopulateCollection(_allAllotmentsCore);
return _allAllotmentsCore;
}
}
private void PopulateCollection(XPCollection<Allotments> sourceCollection)
{
sourceCollection.AddRange(PCs);
sourceCollection.AddRange(SCs);
}
性質
[PersistentAlias("PCs[Project is not null].Count")] // THIS IS WORKING
//[PersistentAlias("AllAllotments[PCs.Project is not null].Count")] // THIS IS NOT WORKING
public int myCustomProperties
{
get { return Convert.ToInt32(EvaluateAlias("myCustomProperties")); }
}
非永続列に使用PersistentAliasが、私は、この列をソートすることができるかどうかを。そのためには、PersistentAliasにロジックを追加する必要があります。私の場合は
:
私は[PersistentAlias( '全体の論理')]のようなPersistentAliasにこのロジックを追加する必要が
ロジック
public int myCustomProperties
{
get
{
int _myCustomProperties = 0;
Projects project = null;
foreach (Allotments obj in AllAllotments)
{
if (project != obj.Project && obj.Project != null)
{
project = obj.Project;
_myCustomProperties += 1;
}
}
return _myCustomProperties ;
}
}
はロジック
に注目しましょうAllAllotments(これはAssociationプロパティではありません)を使用しています。
[PersistentAlias( 'AllAllotmentsを使用])のように使用すると、エラーが発生します。
しかし私は[PersistentAlias( "use PCs")]のように使います。
PC(アソシエーションプロパティ)とAllAllotments(アソシエーションなし)のみ。
だから、私の質問:私はPersistentAliasにAllAllotmentsを使用するにはどうすればよい
?
誰でも知りたいですか?