public List <DeviceSubscription> QueryDeviceSubscriptions(IEnumerable <int> channelIds, string uid) { var list = new List <DeviceSubscription>(); if (channelIds.Count() == 0) { return(list); } string chanelIDs = ""; foreach (int i in channelIds) { chanelIDs += "," + i.ToString(); } chanelIDs = chanelIDs.TrimEnd(','); const string sqlFormat = "select * from DeviceSubscription where UserUid=@uid and ChannelId in ({0})"; using (var con = new SqlConnection(ConfigHelp.ConnectionString)) { con.Open(); var cmd = con.CreateCommand(); cmd.CommandText = string.Format(sqlFormat, chanelIDs); cmd.Parameters.Add(new SqlParameter("@uid", uid)); using (var rdr = cmd.ExecuteReader()) { while (rdr.Read()) { var subscription = new DeviceSubscription(); subscription.Id = rdr.GetInt32(rdr.GetOrdinal("Id")); subscription.ChannelId = rdr.GetInt32(rdr.GetOrdinal("ChannelId")); subscription.SubscriptionId = rdr.GetString(rdr.GetOrdinal("SubscriptionId")); subscription.UserUid = rdr.GetString(rdr.GetOrdinal("UserUid")); subscription.Channel = GetChannel(subscription.ChannelId); list.Add(subscription); } } } return(list); }
public List<DeviceSubscription> QueryDeviceSubscriptions(IEnumerable<int> channelIds, string uid) { var list = new List<DeviceSubscription>(); if (channelIds.Count() == 0) return list; string chanelIDs = ""; foreach(int i in channelIds) { chanelIDs += "," + i.ToString(); } chanelIDs = chanelIDs.TrimEnd(','); const string sqlFormat = "select * from DeviceSubscription where UserUid=@uid and ChannelId in ({0})"; using (var con = new SqlConnection(ConfigHelp.ConnectionString)) { con.Open(); var cmd = con.CreateCommand(); cmd.CommandText = string.Format(sqlFormat, chanelIDs); cmd.Parameters.Add(new SqlParameter("@uid", uid)); using (var rdr = cmd.ExecuteReader()) { while (rdr.Read()) { var subscription = new DeviceSubscription(); subscription.Id = rdr.GetInt32(rdr.GetOrdinal("Id")); subscription.ChannelId = rdr.GetInt32(rdr.GetOrdinal("ChannelId")); subscription.SubscriptionId = rdr.GetString(rdr.GetOrdinal("SubscriptionId")); subscription.UserUid = rdr.GetString(rdr.GetOrdinal("UserUid")); subscription.Channel = GetChannel(subscription.ChannelId); list.Add(subscription); } } } return list; }