這裏是我的問題的細分版本:將整數列表追加到C#中的SQL Server查詢中。我怎樣才能做到這一點?
我有一個方法。參數是一個整數列表。我希望創建一個優化的SQL查詢,該查詢返回該行的id等於參數列表中的一個整數的所有行的特定值。很簡單,對吧?
我有我已經變得更加困難比它需要的是一種感覺:
private List<string> ReturnValue(List<int> ids)
{
List<string> ValuesIWantToReturn = new List<string>();
StringBuilder sb = new StringBuilder("SELECT ValueIWantToReturnfrom table WHERE ");
foreach (int id in ids)
{
sb.Append(string.Format("ID = {0} OR ", id));
}
sb.Remove(sb.Length - 3, 3); //remove trailing "OR"
sb.Append(";");
SqlDataReader reader = RunSelectQuery(sb.ToString());
while (reader.Read())
{
ValuesIWantToReturn.Add(reader.GetString(0));
}
return ValuesIWantToReturn;
}
在我的代碼的可讀性一般和結構的任何意見,將太感激。我總是很高興,以提高:)
我要補充 - 我沒有製作存儲過程的能力:) – 2012-07-27 14:22:37