4
我認爲這本來很簡單,但不幸的是我無法找到我正在尋找的答案。 我想實現的是,如果它們被複制,則返回一個獨特結果列表,否則返回0而不是單數項。 代碼我有多遠,其中第一個不同的應該返回所有不同行,然後第二個過濾它們進一步下跌:如果從DistinctBy發現沒有重複項,則返回0
List<Server> serversWithBothAffinity = filteredServers
.DistinctBy(x => new { x.ServerVersion, x.ServerName, x.ServerSlot, x.ServerAffinity})
.DistinctBy(x => new {x.ServerVersion, x.ServerName, x.ServerSlot});
這樣做的問題是,當我在短短1個項目其中有沒有重複的清單 - 當我想它會返回此代碼仍返回1,0
天天開心情況下,當所有的工作,我想,考慮到以下幾點:
{1.0, "ServerName1", "ServerSlotA", "Europe"}
{1.0, "ServerName1", "ServerSlotA", "Pacific"}
{1.0, "ServerName2", "ServerSlotB", "Europe"}
{1.0, "ServerName2", "ServerSlotA", "Pacific"}
結果如預期的那樣正確:
{1.0, "ServerName1", "ServerSlotA"}
問題的情況下,給出以下:
{1.0, "ServerName1", "ServerSlotA", "Europe"}
結果不正確:
{1.0, "ServerName1", "ServerSlotA"}
預期結果:什麼
請幫助。
我喜歡簡單。這看起來像sql server中的'group by' +'having'。 – Alisson
謝謝,這樣做更有意義 –