本文整理汇总了C#中Option.Select方法的典型用法代码示例。如果您正苦于以下问题:C# Option.Select方法的具体用法?C# Option.Select怎么用?C# Option.Select使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Option
的用法示例。
在下文中一共展示了Option.Select方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ValueOf
private int ValueOf(Option<ConstantExpression> expression)
{
return
expression
.Select(expr => expr.Value)
.DefaultIfEmpty(0)
.Single();
}
示例2: ToString
private string ToString(Option<ConstantExpression> constant)
{
return
constant
.Select(c => c.Value.ToString("0"))
.DefaultIfEmpty(string.Empty)
.Single();
}
示例3: Negative_Always_ReturnsInvertedIsSome
public void Negative_Always_ReturnsInvertedIsSome()
{
// arrange
var options = new Option<int>[] { Option.Some<int>(1), Option.None<int>() };
var expected = options.Select(x => !x.IsSome).ToArray();
// act
var actual = options.Select(x => !x).ToArray();
// assert
Assert.Equal(expected, actual);
}
示例4: TestIEnumerableHelper
private static void TestIEnumerableHelper(Option<int> o)
{
var select = o.Select(x => x);
Assert.AreEqual(o.HasValue ? 1 : 0, select.Count());
select = o.Select((x, index) => x);
Assert.AreEqual(o.HasValue ? 1 : 0, select.Count());
var where = o.Where(x => true);
Assert.AreEqual(o.HasValue ? 1 : 0, where.Count());
where = o.Where((x, index) => true);
Assert.AreEqual(o.HasValue ? 1 : 0, where.Count());
var toArr = o.ToArray();
Assert.AreEqual(o.HasValue ? 1 : 0, toArr.Length);
if (o.HasValue)
{
var aggregate = o.Aggregate((acc, val) => acc + val);
Assert.AreEqual(o.ValueOrDefault, aggregate);
aggregate = o.Aggregate(0, (acc, val) => acc + val);
Assert.AreEqual(o.ValueOrDefault, aggregate);
}
bool run = false;
foreach (var obj in ((System.Collections.IEnumerable)o))
{
run = true;
Assert.AreEqual(1, (int)obj);
}
Assert.AreEqual(run, o.HasValue);
run = false;
o.ForEach((val) => run = true);
Assert.AreEqual(run, o.HasValue);
}