/// <summary>Gets the value of the specified column as an instance of type T.</summary> /// <typeparam name="T">The type of element to return.</typeparam> /// <param name="reader">The reader.</param> /// <param name="columnName">Name of the column.</param> /// <returns>This method returns default values for null database column values or undefined columns.</returns> public static T GetSafeValue <T>(this DbDataReader reader, string columnName) { for (int i = 0; i < reader.FieldCount; i++) { if (reader.GetName(i).Equals(columnName, StringComparison.InvariantCultureIgnoreCase)) { return(reader.GetSafeValue <T>(i)); } } return(default(T)); }