Проблема со списком и понятным методом: - PullRequest
0 голосов
/ 15 июня 2011
Dictionary<string, List<DisplayAllQuestionsTable>> tPages= new Dictionary<string, List<DisplayAllQuestionsTable>>();;
List<DisplayAllQuestionsTable> threadsByTopic = new List<DisplayAllQuestionsTable>();
int tPage=0;
        foreach (var topicKeys in postsByTopic)
        {

               if (topicKeys.Key == subTopic)
                {
                    foreach (var item in postsByTopic[topicKeys.Key])
                    {
                        questionNumber++;
                        maximumTopicPages++;
                        threadsByTopic.Add(item);//Adds All DisplayAllTables objects
                        //if there are 20 add a button.
                        if (maximumTopicPages == 20)
                        {
                            tPages.Add(tPage.ToString(), threadsByTopic);//The threadsByTopic clears everytime i call threadsByTopic.clear()

                            threadsByTopic.Clear();
                            tPage++;

                    }
                }

Я знаю, что если это ссылка, ее ссылка передается по значению.Но если я добавлю это список threadByTopic в словарь .. Разве это не сохранено как есть ...?или его нужно сбросить?

1 Ответ

1 голос
/ 15 июня 2011

Экземпляр добавляется в словарь, но он остается в том же списке, поэтому, когда вы используете clear, вы очищаете список, который вы только что добавили.Вместо этого вы должны создать новый объект списка, используя clear.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...