C# 如何在OrderBy中使用Linq查询结果?
在这里,我有一个场景来获取本月(本月)的数据 模式C# 如何在OrderBy中使用Linq查询结果?,c#,linq,C#,Linq,在这里,我有一个场景来获取本月(本月)的数据 模式 bank_deposit agentid (nvarchar(30)) depositamount (DECIMAL(10,0)) date_time (TIMESTAMP) collection customeridn (varchar(30)) amountreceived (DECIMAL(10,0)) date_time
bank_deposit
agentid (nvarchar(30))
depositamount (DECIMAL(10,0))
date_time (TIMESTAMP)
collection
customeridn (varchar(30))
amountreceived (DECIMAL(10,0))
date_time (TIMESTAMP)
agentid (nvarchar(30))
在这里,我使用union在一列中获取datetime列数据
var unionDateColumn = ((from agent in db.collections select agent.Date_Time)
.Union(from u in db.bank_deposit select u.Date_Time)).ToList();
如何将此unionDateColumn数据用于orderby和以获得预期的输出
下面是对金额总和的查询,但这里我的问题是如何
var model = (from coll in db.collections.Where(e => e.AgentID == item.AgentID)
let depositedAmount = db.bank_deposit.Where(d => d.AgentID == item.AgentID ).Sum(c => c.DepositedAmount) == null ? 0
: db.bank_deposit.Where(d => d.AgentID == item.AgentID).Sum(x => x.DepositedAmount)
let collectionAmount = db.collections.Where(c => c.AgentID == item.AgentID).Sum(c => c.AmountReceived) == null ? 0
: db.collections.Where(v => v.AgentID == item.AgentID).Sum(m => m.AmountReceived)
select new GetBalanceAmount
{
DepositedAmount = depositedAmount,
CollectionAmount = collectionAmount
});
我想你想按日期和时间排序结果
var result = unoinDateColumn.OrderBy(t=>t.Date_Time).ToList().;
为什么是第一默认?我想你想要每一排 萨吉塔兰的例子: var result=unoinDateColumn.OrderBy(t=>t.Date\u Time).ToList(); 结果与“按日期时间从unionDateColumn order中选择*相同” 你的例子是: model.ToList().OrderByDescending(unoinDateColumn.FirstOrDefault() 与“从模型orderby unionDateColumn中选择*相同” 请问你为什么要分开处理每一列?而不是在一个大阵列中 在一个数组中处理它,并按照此模型进行操作
它将影响对象模型,并按如下方式对其排序:model=model.sortedBy(model.Date\u Time) 否,我想按unoinDateColumn排序,返回两列的日期。请参阅我的预期outputmodel.ToList().OrderByDescending(unoinDateColumn.FirstOrDefault();我试着这样做我有两个表两个表都有重复的数据,所以我在这里使用union for date\u time field now unionDateColumn查询为两列返回日期(这是动态列)通过使用本专栏文章如何使用orderby子句和下面的模型查询来获得预期的输出?没有神奇的鼠标你没有得到我的观点你能举一个例子来获得我的预期结果吗?通过使用我的模式
var result = unoinDateColumn.OrderBy(t=>t.Date_Time).ToList().;