【问题标题】:LINQ Expression In Subgroups子组中的 LINQ 表达式
【发布时间】:2010-02-10 14:18:12
【问题描述】:
 public class ErrorLogModel
{

    public int UnitID { get; set; }
    public string Address { get; set; }
    public IList<HardwareLogModel> _Hardware { get; set; }

}
  public  class SPLHardwareLogModel
{
    public Guid HardwareID { get; set; }
    public string HardwareDesc { get; set; }
    public string HardwareStatus { get; set; }
    public string ErroLogCode { get; set; }
    public string ErroLogDescription { get; set; }
    public DateTime? ErroLogDate { get; set; }
}

如果我想对 ErrorLogModel where HardwareID=100 使用表达式 where 子句

任何人都可以帮助我吗?

ErrorLogModel.Where((SPLHardwareLogModel a)=>a.ErroLogCode=='10001');

【问题讨论】:

    标签: c# .net linq linq-to-entities


    【解决方案1】:

    不会吧:

    ErrorLogModel.Where(i => i.SPLHardwareLogModels.FirstOrDefault(j => j.ErrorLogCode = '10001') != null);
    

    这样,它找到错误日志模型并解析子集合,寻找对象的存在。那就是如果你想选择 errorlogmodel 对象。是这样吗?

    如果这恰好回答了您的问题,请将其标记为答案,这将有助于提高您的回答率...

    HTH。

    【讨论】:

      【解决方案2】:

      很难阅读这个问题 - 不确定这是否有帮助,但我还是会发布它。

      List<SPLHardwareLogModel> result = myErrorLogModel._Hardware
          .OfType<SPLHardwareLogModel>()
          .Where(a => a.HardwareID == 100)
          .Where(a => a.ErroLogCode == '10001')
          .ToList();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多