当前位置: 首页>>代码示例>>C#>>正文


C# ItemCollection.AddRange方法代码示例

本文整理汇总了C#中ItemCollection.AddRange方法的典型用法代码示例。如果您正苦于以下问题:C# ItemCollection.AddRange方法的具体用法?C# ItemCollection.AddRange怎么用?C# ItemCollection.AddRange使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ItemCollection的用法示例。


在下文中一共展示了ItemCollection.AddRange方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Test_FindInsertionPoint_non_existant_item

		public void Test_FindInsertionPoint_non_existant_item()
		{
			var items = new ItemCollection<Foo>();
			items.AddRange(new []{ new Foo("b"), new Foo("b"),  new Foo("d")});

			var comparison = new Comparison<Foo>((x, y) => string.CompareOrdinal(x.Name, y.Name));

			Assert.AreEqual(0, items.FindInsertionPoint(new Foo("a"), comparison));
			Assert.AreEqual(2, items.FindInsertionPoint(new Foo("c"), comparison));
			Assert.AreEqual(3, items.FindInsertionPoint(new Foo("e"), comparison));
		}
开发者ID:nhannd,项目名称:Xian,代码行数:11,代码来源:ItemCollectionTests.cs

示例2: Test_FindInsertionPoint_non_existing_item

		public void Test_FindInsertionPoint_non_existing_item()
		{
			var items = new ItemCollection<Foo>();
			items.AddRange(new[] { new Foo("b"), new Foo("b"), new Foo("d") });

			var comparison = new Comparison<Foo>((x, y) => string.CompareOrdinal(x.Name, y.Name));

			var b = items.FindInsertionPoint(new Foo("b"), comparison);
			Assert.IsTrue(b == 0 || b == 1);

			var d = items.FindInsertionPoint(new Foo("d"), comparison);
			Assert.IsTrue(d == 2);
		}
开发者ID:nhannd,项目名称:Xian,代码行数:13,代码来源:ItemCollectionTests.cs

示例3: Test_sorting_update_nonsort_property_retains_order

		public void Test_sorting_update_nonsort_property_retains_order()
		{
			var item1 = new ActivityMonitorComponent.WorkItem(new WorkItemData { Identifier = 1, Status = WorkItemStatusEnum.Pending, Priority = WorkItemPriorityEnum.Normal });
			var item2 = new ActivityMonitorComponent.WorkItem(new WorkItemData { Identifier = 2, Status = WorkItemStatusEnum.Pending, Priority = WorkItemPriorityEnum.Normal });
			var item3 = new ActivityMonitorComponent.WorkItem(new WorkItemData { Identifier = 3, Status = WorkItemStatusEnum.Pending, Priority = WorkItemPriorityEnum.Normal });
			var item4 = new ActivityMonitorComponent.WorkItem(new WorkItemData { Identifier = 4, Status = WorkItemStatusEnum.Pending, Priority = WorkItemPriorityEnum.Normal });
			var item5 = new ActivityMonitorComponent.WorkItem(new WorkItemData { Identifier = 5, Status = WorkItemStatusEnum.Pending, Priority = WorkItemPriorityEnum.Normal });

			var items = new ItemCollection<ActivityMonitorComponent.WorkItem>();
			items.AddRange(new[] { item1, item2, item3, item4, item5 });

			// the idea here is that if an item is updated, but the sorty property (Status) has not changed,
			// then the item does not move around in the list, but is updated in place
			var manager = new ActivityMonitorComponent.WorkItemUpdateManager(items, NoFilter, () => { });

			// item 1 Priority changes - should not cause a change in list order
			var x = new ActivityMonitorComponent.WorkItem(new WorkItemData { Identifier = 1, Status = WorkItemStatusEnum.Pending, Priority = WorkItemPriorityEnum.Stat});
			manager.Update(new[] { x }, StatusComparison);
			Assert.IsTrue(items.SequenceEqual(new[] { item1, item2, item3, item4, item5 }));

			// item 4 Priority changes - should not cause a change in list order
			var y = new ActivityMonitorComponent.WorkItem(new WorkItemData { Identifier = 4, Status = WorkItemStatusEnum.Pending, Priority = WorkItemPriorityEnum.High});
			manager.Update(new[] { y }, StatusComparison);
			Assert.IsTrue(items.SequenceEqual(new[] { item1, item2, item3, item4, item5 }));
		}
开发者ID:nhannd,项目名称:Xian,代码行数:25,代码来源:ActivityMonitorComponentTests.cs

示例4: ClassificationEnsembleSolution

    public ClassificationEnsembleSolution(IEnumerable<IClassificationModel> models, IClassificationProblemData problemData, IEnumerable<IntRange> trainingPartitions, IEnumerable<IntRange> testPartitions)
      : base(new ClassificationEnsembleModel(Enumerable.Empty<IClassificationModel>()), new ClassificationEnsembleProblemData(problemData)) {
      this.trainingPartitions = new Dictionary<IClassificationModel, IntRange>();
      this.testPartitions = new Dictionary<IClassificationModel, IntRange>();
      this.classificationSolutions = new ItemCollection<IClassificationSolution>();

      List<IClassificationSolution> solutions = new List<IClassificationSolution>();
      var modelEnumerator = models.GetEnumerator();
      var trainingPartitionEnumerator = trainingPartitions.GetEnumerator();
      var testPartitionEnumerator = testPartitions.GetEnumerator();

      while (modelEnumerator.MoveNext() & trainingPartitionEnumerator.MoveNext() & testPartitionEnumerator.MoveNext()) {
        var p = (IClassificationProblemData)problemData.Clone();
        p.TrainingPartition.Start = trainingPartitionEnumerator.Current.Start;
        p.TrainingPartition.End = trainingPartitionEnumerator.Current.End;
        p.TestPartition.Start = testPartitionEnumerator.Current.Start;
        p.TestPartition.End = testPartitionEnumerator.Current.End;

        solutions.Add(modelEnumerator.Current.CreateClassificationSolution(p));
      }
      if (modelEnumerator.MoveNext() | trainingPartitionEnumerator.MoveNext() | testPartitionEnumerator.MoveNext()) {
        throw new ArgumentException();
      }

      trainingEvaluationCache = new Dictionary<int, double>(problemData.TrainingIndices.Count());
      testEvaluationCache = new Dictionary<int, double>(problemData.TestIndices.Count());

      RegisterClassificationSolutionsEventHandler();
      classificationSolutions.AddRange(solutions);
    }
开发者ID:thunder176,项目名称:HeuristicLab,代码行数:30,代码来源:ClassificationEnsembleSolution.cs


注:本文中的ItemCollection.AddRange方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。