SQL Server データベースに、2 つのテーブルの UNION ALL であるビューがあります。特定のメンバーのビューからすべての行を取得するとき、これが私の呼び出しです。
public IEnumerable<MemberTransaction> GetMemberTransactions(string socSecNo)
{
var query = Manager.MemberTransactions
.Where(m => m.SocSecNo == socSecNo)
.OrderByDescending(m => m.TranDate);
var results = query.Execute();
return results;
}
コードから Get メソッドを呼び出し、返されたコレクションをグリッドのデータソース プロパティに割り当てます。行は、Get メソッドの order by ステートメントに従って表示されません。それらはランダムな順序で表示されます。
行を正しく表示するために、これを行う必要があります。
IEnumerable<MemberTransaction> transactions = FetchMemberTransactions(currentMember.SocSecNo);
MemberTransactionBS.DataSource = transactions.OrderByDescending(t => t.TranDate);
MemberTransactionsGrid.Refresh();
public IEnumerable<MemberTransaction> FetchMemberTransactions(string socSecNo)
{
var transactions = Repository.GetMemberTransactions(socSecNo);
return transactions;
}
ユニオンから行を返すことに問題はありますか? OrderByDescending
期待どおりに動作しないのはなぜですか?