This is the easiest and fastest approach:
return "True".Equals(readValue("Useable"), StringComparison.OrdinalIgnoreCase);
Note. Boolean.TryParseis not a good choice as it is much slower than a simple string comparison. Please view the results of this test (using Jon Skeet BenchmarkHelper) :
using System;
using BenchmarkHelper;
class Example
{
static void Main()
{
var results = TestSuite.Create
("Boolean.TryParse vs. String comparison", "True", true)
.Add(tryParse)
.Add(stringComparison)
.RunTests()
.ScaleByBest(ScalingMode.VaryDuration);
results.Display(ResultColumns.NameAndDuration | ResultColumns.Score,
results.FindBest());
}
static Boolean tryParse(String input)
{
Boolean result;
Boolean.TryParse(input, out result);
return result;
}
static Boolean stringComparison(String input)
{
return "True".Equals(input, StringComparison.OrdinalIgnoreCase);
}
}
Output:
tryParse 12.118 6.03
stringComparison 21.895 1.00
source
share