我正在获取一个List类型的对象列表
我希望记录形成EventType = "Changed"
EventDesc = "Changed"
和UserName = "zMobile"
的列表但是当我尝试使用我的代码得到结果时,我只使用相同的数据多次获得一行
orderEvent = new List<ECGetOrderResponse.OrderEvent>();
EventType = "Changed";
EventDesc = "Changed";
UserName = "zMobile";
orderEvent = result.Body.Order.OrderEvents.OrderEvent;
query = orderEvent
.Where(o => o.EventType == EventType)
.Where(o => o.EventDesc == EventDesc)
.Where(o=>o.UserName==UserName)
.ToList();
我想在linq代码中做的更多事情是: orderEvent有一个属性是Notes。我想只过滤那个Notes Last 1值为&#39; A&#39;
的记录你能描述一下我的结果的Linq语句的正确格式吗?
答案 0 :(得分:3)
当我尝试用我的代码获得结果时,我只得到一行 多次使用相同的数据
使用此代码,无法始终获得相同的行,因此result.Body.Order.OrderEvents.OrderEvent
之前已经包含这些行。但是你还没有表明它是什么,所以我们无法帮助修复它。
我希望
orderEvent
具有Notes
的属性。在笔记 字段最后1个字符是&#39; A&#39;
嗯,这很简单:
query = orderEvent
.Where(o => o.EventType == EventType)
.Where(o => o.EventDesc == EventDesc)
.Where(o => o.UserName == UserName)
.Where(o => o.Notes.EndsWith("A", StringComparison.CurrentCultureIgnoreCase))
.ToList();
如果您不想允许StringComparison
,请相应地更改a
。