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


C# System.Linq.Single方法代码示例

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


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

示例1: Execute

        public void Execute()
        {
            var languages = new[] {"csharp", "visualbasic", "java", "python", "ruby", "php", "c++"};

            //
            // First拡張メソッドは、シーケンスの最初の要素を返すメソッド。
            //
            // predicateを指定した場合は、その条件に合致する最初の要素が返る。
            //
            Output.WriteLine("============ First ============");
            Output.WriteLine(languages.First());
            Output.WriteLine(languages.First(item => item.StartsWith("v")));

            //
            // Last拡張メソッドは、シーケンスの最後の要素を返すメソッド。
            //
            // predicateを指定した場合は、その条件に合致する最後の要素が返る。
            //
            Output.WriteLine("============ Last ============");
            Output.WriteLine(languages.Last());
            Output.WriteLine(languages.Last(item => item.StartsWith("p")));

            //
            // Single拡張メソッドは、シーケンスの唯一の要素を返すメソッド。
            //
            // Singleを利用する場合、対象となるシーケンスには要素が一つだけ
            // でないといけない。複数の要素が存在する場合例外が発生する。
            //
            // また、空のシーケンスに対してSingleを呼ぶと例外が発生する。
            //
            // predicateを指定した場合は、その条件に合致するシーケンスの唯一の
            // 要素が返される。この場合も、結果のシーケンスには要素が一つだけの
            // 状態である必要がある。条件に合致する要素が複数であると例外が発生する、
            //
            Output.WriteLine("============ Single ============");
            var onlyOne = new[] {"csharp"};
            Output.WriteLine(onlyOne.Single());

            try
            {
                // ReSharper disable once UnusedVariable
                var val = languages.Single();
            }
            catch
            {
                Output.WriteLine("複数の要素が存在する状態でSingleを呼ぶと例外が発生する。");
            }

            Output.WriteLine(languages.Single(item => item.EndsWith("y")));

            try
            {
                // ReSharper disable once UnusedVariable
                var val = languages.Single(item => item.StartsWith("p"));
            }
            catch
            {
                Output.WriteLine("条件に合致する要素が複数存在する場合例外が発生する。");
            }
        }
开发者ID:devlights,项目名称:Sazare,代码行数:60,代码来源:LinqSamples45.cs

示例2: ProjectingEnumToString

        public void ProjectingEnumToString()
        {
            var customers = new[] { new Customer() { FirstName = "Bill", LastName = "White", CustomerType = CustomerType.Vip } }.AsQueryable();

            var projected = customers.Project().To<CustomerDto>();
            projected.ShouldNotBeNull();
            Assert.Equal(customers.Single().CustomerType.ToString().ToUpper(), projected.Single().CustomerType);
        }
开发者ID:suizhikuo,项目名称:SourceCollection,代码行数:8,代码来源:ProjectEnumTest.cs

示例3: Calculate

        // Maximum Fitness = Win + N * (50 + H) + N * 50
        public double Calculate(string playerName, BattleResult result)
        {
            var score = 0.0;

            var players = new[] { result.Winner, result.Loser };
            var playerState = players.Single(p => p.Name == playerName);
            var opponentState = players.Single(p => p.Name != playerName);

            if (result.Winner == playerState)
            {
                score += 200;
            }

            score += playerState.AllNeuromon.Where(n => !n.IsDead).Sum(n => 50.0 + n.Health);

            score += opponentState.AllNeuromon.Where(n => n.IsDead).Sum(n => 50.0);
            score -= opponentState.AllNeuromon.Where(n => !n.IsDead).Sum(n => n.Health);

            return score >= 0.0 ? score : 0.0;
        }
开发者ID:alexjneves,项目名称:Neuromon,代码行数:21,代码来源:ScoreCalculator.cs

示例4: FromText

 public static CommandType FromText(string text)
 {
     var validTypes = new[] { Status, Supports, Sid, Information, Message, Search, Result, ConnectToMe, ReversedConnectToMe, GetPassword, Password, Quit, Get, GetFileInformation, Send };
     return validTypes.Single(validType => validType.Name == text);
 }
开发者ID:Caraul,项目名称:FabricAdcHub,代码行数:5,代码来源:CommandType.cs


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