(примечание: я пометил этот C #, но я использую Monotouch, поэтому он может вести себя по-другому, я не слишком уверен)
Вот мой сценарий: у меня естьСписок, который сохраняется на протяжении всего моего приложения, это относится ко всему списку объектов.Затем я фильтрую эти данные (через выбор пользователя в приложении) и отображаю соответствующие элементы.
Список обновляется при обращении к веб-службе, способ, которым я делаю это следующим образом:
HandleWebServiceComplete(object sender, ItemRetreivedEventArgs e)
{
// snip - error handling above this
if (e.Result != null)
{
foreach (var item in e.Result)
{
if (!mainList.Contains(item))
mainList.Add(item);
}
RefreshDisplayList(mainList);
}
}
Так что, очевидно, это проверяет каждый элемент, возвращаемый веб-службой, для проверкичто его еще нет в списке (бывают ситуации, когда это возможно) - поэтому мой вопрос, лучше ли будет использовать List.AddRange()
, а потом проверять наличие дубликатов в списке или просто продолжать в том же духе?уже идет?