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


C# ObservableDictionary.TryAddRange方法代码示例

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


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

示例1: TryAddRangeAddsNonExistingNewItems

        public void TryAddRangeAddsNonExistingNewItems(int amountOfItemsToAdd)
        {
            // given
            var keyValuePairs = Enumerable.Range(0, amountOfItemsToAdd)
                .Select(i => new KeyValuePair<int, string>(i, $"#{i}"))
                .ToList();

            using (var observableDictionary = new ObservableDictionary<int, string>())
            {
                // when
                IDictionary<int, string> nonAddedKeyValuePairs;
                var tryAddResult = observableDictionary.TryAddRange(keyValuePairs, out nonAddedKeyValuePairs);

                // then check whether all items have been accounted for
                tryAddResult.Should().Be(true);

                nonAddedKeyValuePairs.Should().NotBeNull();
                nonAddedKeyValuePairs.Should().BeEmpty();

                observableDictionary.Count.Should().Be(amountOfItemsToAdd);
                foreach (var keyValuePair in keyValuePairs)
                {
                    observableDictionary.Should().Contain(keyValuePair);
                }
            }
        }
开发者ID:jbattermann,项目名称:JB.Common,代码行数:26,代码来源:ObservableDictionaryModificationTests.cs

示例2: TryAddRangeAddsNonExistingItemsAndReportsNonAddedBack

        public void TryAddRangeAddsNonExistingItemsAndReportsNonAddedBack(int amountOfInitialItems, int amountOfItemsToAdd)
        {
            // given
            var initialKeyValuePairs = Enumerable.Range(0, amountOfInitialItems)
                .Select(i => new KeyValuePair<int, string>(i, $"#{i}"))
                .ToList();

            var keyValuePairsToAdd = Enumerable.Range(0, amountOfItemsToAdd)
                .Select(i => new KeyValuePair<int, string>(i, $"#{i}"))
                .ToList();

            using (var observableDictionary = new ObservableDictionary<int, string>(initialKeyValuePairs))
            {
                // when
                IDictionary<int, string> itemsThatCouldNotBeAdded;
                var tryAddResult = observableDictionary.TryAddRange(keyValuePairsToAdd, out itemsThatCouldNotBeAdded);

                // then check whether all items have been accounted for
                tryAddResult.Should().Be(false);
                itemsThatCouldNotBeAdded.Should().NotBeNull();
                itemsThatCouldNotBeAdded.Should().NotBeEmpty();

                observableDictionary.Count.Should().Be(amountOfInitialItems + amountOfItemsToAdd - itemsThatCouldNotBeAdded.Count);

                foreach (var keyValuePair in keyValuePairsToAdd.Except(itemsThatCouldNotBeAdded))
                {
                    observableDictionary.Should().Contain(keyValuePair);
                }

                foreach (var keyValuePair in initialKeyValuePairs.Intersect(keyValuePairsToAdd))
                {
                    itemsThatCouldNotBeAdded.Should().Contain(keyValuePair);
                }
            }
        }
开发者ID:jbattermann,项目名称:JB.Common,代码行数:35,代码来源:ObservableDictionaryModificationTests.cs


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