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


C# IReadOnlyList.Count方法代码示例

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


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

示例1: CreateNodes

        static IReadOnlyList<IMemberDefinition> CreateNodes(CallInfo callInfo, IReadOnlyList<object> args)
        {
            var result = new List<IMemberDefinition>();

            int difference;
            var nameCount = callInfo.ArgumentNames.Count;
            var argumentCount = args.Count;

            if (argumentCount != nameCount)
            {
                if (nameCount != args.Count(x => !(x is IMemberDefinition)))
                    throw new NotSupportedException("Unnamed arguments must be MemberDefinition instances.");

                difference = argumentCount - nameCount;
            }
            else
            {
                difference = 0;
            }

            var argumentNames = callInfo.ArgumentNames;

            for (var i = argumentCount - 1; i >= 0; i--)
            {
                var argument = args[i];

                var dynamicMember = argument as IMemberDefinition;
                if (dynamicMember == null)
                {
                    var name = argumentNames[i - difference];

                    var @delegate = argument as Delegate;
                    if (@delegate != null)
                    {
                        dynamicMember = MemberDefinition.Method(name, @delegate);
                    }
                    else
                    {
                        var type = argument as Type;

                        if (type == null)
                            throw new NotSupportedException("Definitions require a type.");

                        if (typeof(Delegate).IsAssignableFrom(type))
                        {
                            dynamicMember = MemberDefinition.EmptyMethod(name, type);
                        }
                        else
                        {
                            dynamicMember = MemberDefinition.Property(name, type);
                        }
                    }
                }

                result.Add(dynamicMember);   
            }

            return result;
        }
开发者ID:StevenThuriot,项目名称:Horizon.Forge,代码行数:59,代码来源:TypeFactory.cs

示例2: WorkoutValueOfNames

 private int WorkoutValueOfNames(IReadOnlyList<string> orderedNames)
 {
     var result = 0;
     for (var i = 0; i < orderedNames.Count(); i++)
     {
         result += (i + 1) * GetNameWorth(orderedNames[i]);
     }
     return result;
 }
开发者ID:James-Lappin,项目名称:ProjectEuler,代码行数:9,代码来源:Problem022.cs

示例3: Parameters

        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="arguments">Arguments</param>
        public Parameters(IReadOnlyList<string> arguments)
        {
            if (null == arguments)
            {
                throw new ArgumentNullException("arguments");
            }
            if (!arguments.Any() || arguments.Count() > 4)
            {
                throw new ArgumentException("Invalid parameter count.");
            }

            this.arguments = arguments;
        }
开发者ID:jefking,项目名称:King.A-Trak,代码行数:17,代码来源:Parameters.cs

示例4: SelectMusicFiles

 public void SelectMusicFiles(IReadOnlyList<MusicFile> musicFiles)
 {
     // Do not wait for the operation to complete. Continue immediately.
     SaveCurrentSelectedFileAsync().IgnoreResult();
     
     if (musicFiles.Count() <= 1)
     {
         MusicPropertiesViewModel.MusicFile = musicFiles.FirstOrDefault();
     }
     else
     {
         MusicPropertiesViewModel.MusicFile = musicFileContext.CreateFromMultiple(musicFiles);
     }
 }
开发者ID:electrobreath,项目名称:musicmanager,代码行数:14,代码来源:MusicPropertiesController.cs

示例5: PathTemplate

 /// <summary>
 /// Constructs a template from its textual representation, such as <c>shelves/*/books/**</c>.
 /// </summary>
 /// <param name="template">The textual representation of the template. Must not be null.</param>
 public PathTemplate(string template)
 {
     GaxPreconditions.CheckNotNull(template, nameof(template));
     _segments = template.Split(s_slashSplit).Select(Segment.Parse).ToList();
     _parameterSegments = _segments.Where(s => s.Kind != SegmentKind.Literal).ToList();
     int pathWildcardCount = _segments.Count(s => s.Kind == SegmentKind.PathWildcard);
     if (pathWildcardCount > 1)
     {
         throw new ArgumentException("Template contains multiple path wildcards", nameof(template));
     }
     _hasPathWildcard = pathWildcardCount != 0;
     _originalTemplate = template;
     ParameterNames = _parameterSegments.Select(x => x.Value).ToList().AsReadOnly();
 }
开发者ID:googleapis,项目名称:gax-dotnet,代码行数:18,代码来源:PathTemplate.cs

示例6: loadFolders

        public async Task<IReadOnlyList<StorageFolder>> loadFolders()
        {
            int count;
            StorageFolder rootFolder = KnownFolders.PicturesLibrary;
            StorageFolder myfolder = await rootFolder.GetFolderAsync("YouMapsImages");
            
            folders = await myfolder.GetFoldersAsync();
             count = folders.Count();
           if(count == 0)
           {
               await myfolder.CreateFolderAsync("default", CreationCollisionOption.FailIfExists);
               await myfolder.GetFoldersAsync();
           }

           return folders;
            
        }
开发者ID:rvrtex,项目名称:mJohnsonYouMaps,代码行数:17,代码来源:LoadProperties.cs

示例7: GetTabPanes

        private IEnumerable<TabPane> GetTabPanes(IReadOnlyList<Product> products)
        {
            var tabPanes = new List<TabPane>();

            for (var i = 0; i <= (products.Count() - 1) / DisplayCount; i++)
            {
                var productItems = new List<ProductItem>();
                for (var j = i * DisplayCount; j < (i + 1) * DisplayCount; j++)
                {
                    if (j < products.Count)
                    {
                        var productItem = new ProductItem()
                        {
                            Id = products[j].Id.ToString(),
                            Name = products[j].Name,
                            Image350x280Path = products[j].Image350x280Path,
                            Image800x640Path = products[j].Image800x640Paths.First(im => im.IsActive).Path,
                            RatingImagePath = products[j].RatingImagePath,
                            OldPrice = products[j].OldPrice.HasValue ? products[j].OldPrice.Value.ToString("C") : string.Empty,
                            NewPrice = products[j].NewPrice.ToString("C"),
                            ExTax = (products[j].NewPrice - products[j].NewPrice * .15m).ToString("C"),
                            Description =
                                products[j].Description.Length > 140
                                    ? string.Format("{0}...", products[j].Description.Substring(0, 140))
                                    : products[j].Description
                        };
                        productItems.Add(productItem);
                    }
                }

                var tabPane = new TabPane
                {
                    Active = i == 0 ? "active" : string.Empty,
                    ProductItems = productItems
                };
                tabPanes.Add(tabPane);
            }
            return tabPanes;
        }
开发者ID:HaoTan,项目名称:APlusSecurityNZ,代码行数:39,代码来源:HomeController.cs

示例8: CreateValueNodes

        static IReadOnlyList<Member> CreateValueNodes(CallInfo callInfo, IReadOnlyList<object> args)
        {
            var result = new List<Member>();

            int difference;
            var nameCount = callInfo.ArgumentNames.Count;
            var argumentCount = args.Count;
            if (argumentCount != nameCount)
            {
                if (nameCount != args.Count(x => !(x is Member)))
                    throw new NotSupportedException("Unnamed arguments must be MemberDefinition instances.");

                difference = argumentCount - nameCount;
            }
            else
            {
                difference = 0;
            }

            var argumentNames = callInfo.ArgumentNames;

            for (var i = argumentCount - 1; i >= 0; i--)
            {
                var argument = args[i];

                var dynamicMember = argument as Member;
                if (dynamicMember == null)
                {
                    var name = argumentNames[i - difference];
                    dynamic value = argument;
                    dynamicMember = Member.Unknown(name, value);
                }

                result.Add(dynamicMember);
            }

            return result;
        }
开发者ID:StevenThuriot,项目名称:Horizon.Forge,代码行数:38,代码来源:TypeFactory.cs

示例9: GetProductsBlocks

        private IEnumerable<ProductsItem> GetProductsBlocks(IReadOnlyList<Product> products)
        {
            var productsBlocks = new List<ProductsItem>();

            for (var i = 0; i <= (products.Count() - 1) / DisplayCount; i++)
            {
                var productBlocks = new List<ProductBlock>();
                for (var j = i*DisplayCount; j < (i + 1)*DisplayCount; j++)
                {
                    if (j < products.Count)
                    {
                        var productBlock = new ProductBlock
                        {
                            Id = products[j].Id.ToString(),
                            Name = products[j].Name,
                            Image240x192Path = products[j].Image240x192Path,
                            Image800x640Path = products[j].Image800x640Paths.First(im => im.IsActive).Path,
                            RatingImagePath = products[j].RatingImagePath,
                            OldPrice = products[j].OldPrice.HasValue?products[j].OldPrice.Value.ToString("C"):string.Empty,
                            NewPrice = products[j].NewPrice.ToString("C"),
                            ExTax = (products[j].NewPrice - products[j].NewPrice*.15m).ToString("C"),
                            Description =
                                products[j].Description.Length > 140
                                    ? string.Format("{0}...", products[j].Description.Substring(0, 140))
                                    : products[j].Description
                        };
                        productBlocks.Add(productBlock);
                    }
                }
                var productsItem = new ProductsItem
                {
                    ProductBlocks = productBlocks
                };
                productsBlocks.Add(productsItem);
            }
            return productsBlocks;
        }
开发者ID:HaoTan,项目名称:APlusSecurityNZ,代码行数:37,代码来源:ProductController.cs

示例10: GetImageAdditionalModels

        private IEnumerable<ImageAdditionalModel> GetImageAdditionalModels(IReadOnlyList<ProductImagePath> image800x640Paths)
        {
            var imageAdditional = new List<ImageAdditionalModel>();
            for (var i = 0; i <= (image800x640Paths.Count() - 1) / DisplayCount; i++)
            {
                var imagePaths = new List<string>();
                for (var j = i * DisplayCount; j < (i + 1) * DisplayCount; j++)
                {
                    if (j < image800x640Paths.Count)
                    {
                        imagePaths.Add(image800x640Paths[j].Path);
                    }
                }
                var imageAdditionalItem = new ImageAdditionalModel
                {
                    Active = i == 0 ? "active" : string.Empty,
                    Paths = imagePaths
                };
                imageAdditional.Add(imageAdditionalItem);
            }

            return imageAdditional;
        }
开发者ID:HaoTan,项目名称:APlusSecurityNZ,代码行数:23,代码来源:ProductController.cs

示例11: GetRelatedProductBlocks

        private IEnumerable<RelatedProductBlock> GetRelatedProductBlocks(IReadOnlyList<Product> relatedProducts)
        {
            var relatedProductBlocks=new List<RelatedProductBlock>();
            for (var i = 0; i <= (relatedProducts.Count() - 1) / DisplayCount; i++)
            {
                var relatedProductsModel = new List<RelatedProductViewModel>();
                for (var j = i * DisplayCount; j < (i + 1) * DisplayCount; j++)
                {
                    if (j < relatedProducts.Count)
                    {
                        var relatedProduct = new RelatedProductViewModel
                        {
                            Id = relatedProducts[j].Id.ToString(),
                            Name = relatedProducts[j].Name,
                            Image800x640Path = relatedProducts[j].Image800x640Paths.First(im => im.IsActive).Path,
                            RatingImagePath = relatedProducts[j].RatingImagePath,
                            OldPrice = relatedProducts[j].OldPrice.HasValue?relatedProducts[j].OldPrice.Value.ToString("C"):string.Empty,
                            NewPrice = relatedProducts[j].NewPrice.ToString("C")
                        };
                        relatedProductsModel.Add(relatedProduct);
                    }
                }

                var relateProductBlock = new RelatedProductBlock
                {
                    Active = i == 0 ? "active" : string.Empty,
                    RelatedProducts = relatedProductsModel
                };
                relatedProductBlocks.Add(relateProductBlock);
            }
            return relatedProductBlocks;
        }
开发者ID:HaoTan,项目名称:APlusSecurityNZ,代码行数:32,代码来源:ProductController.cs

示例12: FindLineWith

 private static int FindLineWith(IReadOnlyList<string> lines, string find)
 {
     var line = -1;
     for (var i = 0; i < lines.Count(); i++)
     {
         if (lines[i].Contains(find))
             line = i;
     }
     return line;
 }
开发者ID:Robin--,项目名称:raml-dotnet-tools,代码行数:10,代码来源:ReverseEngineeringService.cs

示例13: FilterMixableTracksByGenre

        /// <summary>
        ///     Filters a mixable tracks by genre.
        /// </summary>
        /// <param name="mixTracks">The mix tracks.</param>
        /// <param name="cycleTracks">The cycle tracks.</param>
        private static void FilterMixableTracksByGenre(List<Track> mixTracks, IReadOnlyList<Track> cycleTracks)
        {
            if (cycleTracks.Count == 0) return;

            const int genreTracksPerCycle = 16;

            var removeTracks = new List<Track>();
            foreach (var track in mixTracks)
            {
                var genre = GetGenreForClumpingPurposes(track.Genre);
                if (cycleTracks.Count(mt => GetGenreForClumpingPurposes(mt.Genre) == genre) > genreTracksPerCycle)
                    removeTracks.Add(track);

                if (cycleTracks.Count > 1 &&
                    GetGenreForClumpingPurposes(cycleTracks[cycleTracks.Count - 1].Genre) == genre &&
                    GetGenreForClumpingPurposes(cycleTracks[cycleTracks.Count - 2].Genre) == genre)
                {
                    removeTracks.Add(track);
                }
            }
            if (removeTracks.Count <= 0) return;

            if (mixTracks.Count - removeTracks.Count <= 1)
            {
            }
            else
            {
                mixTracks.RemoveAll(t => removeTracks.Exists(rt => rt.Description == t.Description));
            }
        }
开发者ID:jasonhighet,项目名称:Halloumi.Shuffler,代码行数:35,代码来源:TrackSelector.cs

示例14: GetSourceFiles

        // The assembly info must be in the last minus 1 position because:
        // - assemblyInfo should be in the end to override attributes
        // - assemblyInfo cannot be in the last position, because last file contains the main
        private static IEnumerable<string> GetSourceFiles(IReadOnlyList<string> sourceFiles, string assemblyInfo)
        {
            if (!sourceFiles.Any())
            {
                yield return assemblyInfo;
                yield break;
            }

            foreach (var s in sourceFiles.Take(sourceFiles.Count() - 1))
                yield return s;

            yield return assemblyInfo;

            yield return sourceFiles.Last();
        }
开发者ID:krytarowski,项目名称:cli,代码行数:18,代码来源:Program.cs

示例15: FilterMixableTracksByArtist

        /// <summary>
        ///     Filters mixable tracks by genre.
        /// </summary>
        /// <param name="mixTracks">The mix tracks.</param>
        /// <param name="cycleTracks">The cycle tracks.</param>
        private static void FilterMixableTracksByArtist(List<Track> mixTracks, IReadOnlyList<Track> cycleTracks)
        {
            if (cycleTracks.Count == 0) return;

            const int artistTracksPerCycle = 8;

            var removeTracks = new List<Track>();
            foreach (var track in mixTracks)
            {
                var artist = GetArtistForClumpingPurposes(track.Artist);
                if (cycleTracks.Count(mt => GetArtistForClumpingPurposes(mt.Artist) == artist) > artistTracksPerCycle)
                    removeTracks.Add(track);

                if (cycleTracks.Count > 1 &&
                    GetArtistForClumpingPurposes(cycleTracks[cycleTracks.Count - 1].Artist) == artist &&
                    GetArtistForClumpingPurposes(cycleTracks[cycleTracks.Count - 2].Artist) == artist)
                {
                    removeTracks.Add(track);
                }
            }

            mixTracks.RemoveAll(t => removeTracks.Exists(rt => rt.Description == t.Description));
        }
开发者ID:jasonhighet,项目名称:Halloumi.Shuffler,代码行数:28,代码来源:TrackSelector.cs


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