我正在循環訪問公司列表,並通過使用以下linq查詢來檢索我想要的數據來創建一個匿名對象。LINQ匿名對象選擇屬性如果不爲空
查詢是如下:
var customMail = this.db.Companies.Where(c => c.Id == company.Id)
.Select(x => new { x.FromMail, x.FromName, x.Subject, x.EmailBody })
這個目的是正確地填充作爲一個列表與包含正確的細節一個結果。但有時一個字段包含一個null
如何過濾掉那些空值?
我已經嘗試沒有成功如下:
var customMail = this.db.Companies.Where(c => c.Id == company.Id)
.Select(x => new { x.FromMail, x.FromName, x.Subject, x.EmailBody })
.Select(a => a.GetType().GetProperties()
.Where(pi => pi.GetValue(a) != null)
.Select(pi => pi.GetValue(a)));
我很想得到的對象,而空值,然後在方法中使用它的值。
你爲什麼使用反射?你可以檢查每個屬性在哪裏 –
由於它是一個匿名對象,道具不可用@EhsanSajjad – Baklap4