2012-08-30 23 views
0

我有一個列有這樣的通過SP填充其他列中一個DataReader:遍歷一個DataReader和每一次獨特的組合發送電子郵件

ColX ColY ColZ 
NYC  100 200 
NYC  101 200 
EWR  100 200 
EWR  100 200 

我想遍歷這個結果,並執行像ColX,ColY,ColZ組合中的每個副本一樣發送電子郵件的操作;在上面的例子中EWR-100-200

如果我無法控制在C#中返回此數據的SP,那麼完成此操作的有效方法是什麼?

回答

1

創建一個Hashset<string>以保存您發送電子郵件的項目的密鑰。

string key = ColX.ToString() + ColY.ToString() + ColZ.ToString(); 

所以:您可以通過創建密鑰

var keysUsed = new Hashset<string>(); 
while (reader.Read()) 
{ 
    // Assuming you got the values from the columns... 
    string key = ColX.ToString() + ColY.ToString() + ColZ.ToString(); 
    if (keysUsed.Add(key)) 
    { 
     // send email 
    } 
} 

的這裏的一點是,keysUsed.Add將返回true如果該項目被添加到​​。如果密鑰已經存在,該方法將返回false

+0

輝煌。我會試試這個。 – FMFF

相關問題