0
迭代的GroupBy我有一個對象Linq |在一個List <>
public class MasterData
{
public string loanId { get; set; }
public string docId { get; set; }
public string fileName { get; set; }
public string doctype { get; set; }
}
我有一個List<MasterData>
lstMstrDatawhich
可能看起來像這樣
<table>
<tr>
<th>loanId</th>
<th>docId</th>
<th>docType</th>
</tr>
<tr>
<td>101</td>
<td>8001</td>
<td>BankStatement</td>
</tr>
<tr>
<td>102</td>
<td>8002</td>
<td>CreditReport</td>
</tr>
<tr>
<td>103</td>
<td>8003</td>
<td>PaySlip</td>
</tr>
<tr>
<td>103</td>
<td>8003</td>
<td>Payslip</td>
</tr>
<tr>
<td>104</td>
<td>8004</td>
<td>CreditReport</td>
</tr>
<tr>
<td>105</td>
<td>8006</td>
<td>Mortgage</td>
</tr>
<tr>
<td>105</td>
<td>8007</td>
<td>Mortgage</td>
</tr>
</table>
我想從這個使用GroupBy
獲取列表。我想要得到一個doctype列表,其中包含唯一DocId的數量。
所以上面的清單將主要導致:
|Doctype |UniqueDocIdCount
----------------------------------
|BankStatement |1
|CreditReport |2
|PaySlip |1
|Mortgage |2
我試圖做這樣的,但如果docID的是保證不會產生正確的結果
var groupDoctype = lsMstrData
.GroupBy(g => new {g.doctype, g.docId})
.Select(s => s.ToList())
.ToList();