public static int? GetIntValue(this XElement element, string attribute = null, int? defaultValue = null) { var val = GetStringValue(element, attribute, null); if (string.IsNullOrEmpty(val)) return defaultValue; int retVal; if (!int.TryParse(val, out retVal)) return defaultValue; return retVal; }