public Email(string newvalue)
{
//initialize
value = string.Empty;
_hashCode = 0;
if (string.IsNullOrEmpty(newvalue)) return;
if (!Expression.IsMatch(newvalue))
{
throw new FormatException("emailaddress is not in a valid format");
}
value = newvalue;
_hashCode = value.ToUpperInvariant().GetHashCode();
}