Подумайте над тем, чтобы написать запрос с указанием своих намерений. Вы хотите, чтобы отдельные отправители комментариев элемента, но только в том случае, если отправитель не является пользователем клиента. Похоже на запрос, не так ли?
var recipients = StreamItemComments
.Where(item => item.Sender != ClientUser.UserName)
.Select(item => item.Sender)
.Distinct();
Вы можете использовать этот запрос для создания уведомлений
foreach (var item in recipients)
{
var notificationObj = new Notification
{
Sender = ClientUser.UserName,
Recipient = item,
...
}
notificationObj.Add();
}
Вы также можете добавить эту конструкцию объекта в запрос, но с вашим вызовом .Add()
для каждого объекта я оставил его вне запроса. Это было бы несложно включить, хотя вам все равно нужно было бы перебрать вывод и вызывать .Add()
для каждого результата.