using System;
public static class NumericParsingExtender
{
public static Int32 ToInt32(this String input, Int32 defaultValue = 0)
{
if (String.IsNullOrEmpty(input)) return defaultValue;
Int32 val;
return Int32.TryParse(input, out val) ? val : defaultValue;
}
}
public class PseudoControl
{
public String Text { get; set; }
public PseudoControl(String text)
{
this.Text = text;
}
}
public class Test
{
public static void Main()
{
PseudoControl txtChild1 = new PseudoControl("12");
PseudoControl txtChild2 = new PseudoControl(null);
PseudoControl txtChild3 = new PseudoControl(String.Empty);
PseudoControl txtWife1 = new PseudoControl("42");
PseudoControl txtWife2 = new PseudoControl("invalid");
PseudoControl txtWife3 = new PseudoControl("20.13");
Int32 total = txtChild1.Text.ToInt32()
+ txtChild2.Text.ToInt32()
+ txtChild3.Text.ToInt32()
+ txtWife1.Text.ToInt32()
+ txtWife2.Text.ToInt32()
+ txtWife3.Text.ToInt32();
Console.WriteLine("Total: {0}", total);
}
}