Получение Лотка CC работать

Я думаю, что вы пытаетесь объединить словари, а затем назначить Number количество повторяющихся элементов.

Вы можете рассмотреть возможность помещения всех словарей в список, итерации по каждому элементу и помещения их в комбинированный словарь результатов. Если элемент уже существует в результате, увеличьте свойство Number.

Начальная настройка:

public class Test
{
    public int Number { get; set; }
    public string Name { get; set; }
}

var dict1 = new Dictionary<string, Test>
{
    { "Key1", new Test { Number = 0, Name = "Name1" } },
    { "Key2", new Test { Number = 0, Name = "Name2" } },
    { "Key3", new Test { Number = 0, Name = "Name3" } }
};

var dict2 = new Dictionary<string, Test>
{
    { "Key1", new Test { Number = 0, Name = "Name1" } },
    { "Key4", new Test { Number = 0, Name = "Name4" } }
};

// Put the dictionaries you want to combine into one list: 
var all = new List<Dictionary<string, Test>>();
all.Add(dict1);
all.Add(dict2);

// Declare result dictionary
var combine = new Dictionary<string, Test>();

Настройка выполнена, это основной цикл, который вам нужен:

foreach (var dict in all)
{
    foreach (var kvp in dict)
    {
        if (combine.ContainsKey(kvp.Key))
        {
            combine[kvp.Key].Number++;
        }
        else
        {
            combine.Add(kvp.Key, kvp.Value);
        }
    }
}

Вывод интерактивной оболочки:

Dictionary<string, Submission#0.Test>(4) { 
    { "Key1", Submission#0.Test { Name="Name1", Number=1 } }, 
    { "Key2", Submission#0.Test { Name="Name2", Number=0 } }, 
    { "Key3", Submission#0.Test { Name="Name3", Number=0 } }, 
    { "Key4", Submission#0.Test { Name="Name4", Number=0 } } 
}
9
задан user62958 10 March 2009 в 16:27
поделиться

2 ответа

Это зависит немного от версии, которую Вы используете. Это всегда - хорошая идея использовать версию CCTray, который Вы загружаете со своего рабочего экземпляра панели инструментов CCNet (на панели инструментов, в левом столбце, Вы найдете, что ссылка 'Загружает CCTray').

Затем это - главным образом вопрос того, "Добавьте Сервер". Более старые версии потребовали соединения Дистанционной работы, которое требует некоторых портов, открытых в Вашем соединении с CCNet. В наше время можно соединиться по HTTP.

4
ответ дан 4 December 2019 в 11:44
поделиться

При использовании версии после 1.1 затем, Вы захотите указать на свой клиент лотка CC на веб-сайт панели инструментов.

Необходимо удостовериться, что у Вас есть установка панели инструментов CCNET веб-сервера затем, можно сделать следующее.

  • Файл> Настройки> Разрабатывают Проекты (щелчок добавляют),
  • Добавьте сервер (щелчок)
  • Выберите панель инструментов Via the CruiseControl
  • Введите адрес своего веб-сайта панели инструментов. Возможно, что-то как "yourserver.com/ccnet". Можно найти это через просмотр к веб-панели инструментов, затем копируя URL до уровня папки.
  • Нажмите "OK", выберите проекты смотреть
  • Получите прибыль!
1
ответ дан 4 December 2019 в 11:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: