Tôi có một tuyên bố LINQ mà sẽ bổ sung lên các giá trị của nhiều cột, mỗi đầu với 'HH' mặc dù có những cột khác có sẵn:Tuyên bố xấu xí LINQ, một cách tốt hơn?
//TODO Clean up this mess
var query1 = (from e in Data
where e.SD == date
select e).Select(x => x.HH01 + x.HH16 + x.HH17 + x.HH18 + x.HH19 + x.HH20 + x.HH21 + x.HH22 + x.HH23 +
x.HH24 + x.HH25 + x.HH26 + x.HH27 + x.HH28 + x.HH29 + x.HH30 + x.HH31 + x.HH32 +
x.HH33 + x.HH34 + x.HH35 + x.HH36 + x.HH37 + x.HH38 + x.HH39 + x.HH40 + x.HH41 +
x.HH42 + x.HH43 + x.HH44 +x.HH45 + x.HH46 + x.HH47 + x.HH48 + x.HH49.GetValueOrDefault()+
x.HH50.GetValueOrDefault());
return query1.FirstOrDefault();
Có cách nào để dọn dẹp này lên? Tôi phải làm rất nhiều biến thể của điều này (trong các phương pháp khác nhau) vì vậy nó sẽ rõ ràng ra rất nhiều 'fluff' nếu nó có thể được.
Ngoài ra tôi muốn gọi .GetValueOrDefault()
trên mỗi cột, nhưng hiện tại tôi đã thực hiện việc này do sự lộn xộn ngoại trừ hai cột cuối cùng.
Đề xuất được đánh giá cao!
Giá trị bạn phải thêm luôn giống nhau không? Vì vậy, luôn luôn HH01, HH16, HH17, ...? –
Nhà cung cấp LINQ nào bạn đang sử dụng? – Oded
@WouterdeKort: Tôi đoán là không, khi anh ta phải làm các biến thể ... – FarligOpptreden