我有一個類似的T-SQL代碼片段:如何檢測linq中不存在的行?
select p.Make, count(p.Make) as _count
from Products p
where p.GroupId = @GroupId
group by p.Make
整個結果集,將一些與5行:
Make _count
``````````````
Make1 32
Make2 54
Make3 60
Make4 09
Make5 47
在C#中,我試圖計算每個百分比使(假設我知道已經有完整的產品),所以我可以構建谷歌圖像圖表(餅圖),所以我需要在那裏傳遞5個值。
我特林做到這一點:
int Make1Count = from row in DataSetProducts.tables[0].AsEnumerable()
where row.Field<string>("Make") == MyEnum.Makers.Make1.ToString()
select row.Field<int>("_count");
等高達Make5Count。理想情況下,我應該有5個結果,但是這並非總是如此,有時結果是這樣的:
Make _count
``````````````
Make1 32
Make4 09
Make5 47
但我仍然需要Make2和3(他們只是零)
我的問題是,例如,當找不到Make2時,此代碼會引發異常。 我該如何避免這種情況?
注1)在我的數據庫,不存在所有制造商的列表,所以我真的不能與任何
注2)在這裏,我避免Convert.toInt32只是from row in ...
之前保持它理解它凝聚
這應該是相當微不足道的,但我無法以某種方式得到它。
感謝的是做了對不起 – LocustHorde