Replaced DatabaseExtender.Coalesce with DatabaseExtender.Cast. It's cleaner that way.

This commit is contained in:
Greg Edwards
2015-05-04 19:56:17 -04:00
parent f0e501b91f
commit 61765fc33d
2 changed files with 6 additions and 15 deletions

View File

@@ -297,9 +297,9 @@ namespace VeekunImport
int id = Convert.ToInt32(rdMoves["id"]);
int type_id = Convert.ToInt32(rdMoves["type_id"]);
int damage_class_id = Convert.ToInt32(rdMoves["damage_class_id"]);
short power = DatabaseExtender.Coalesce(rdMoves["power"], (short)0);
short pp = DatabaseExtender.Coalesce(rdMoves["pp"], (short)0);
short accuracy = DatabaseExtender.Coalesce(rdMoves["accuracy"], (short)0);
short power = DatabaseExtender.Cast<short ?>(rdMoves["power"]) ?? 0;
short pp = DatabaseExtender.Cast<short?>(rdMoves["pp"]) ?? 0;
short accuracy = DatabaseExtender.Cast<short?>(rdMoves["accuracy"]) ?? 0;
short priority = Convert.ToInt16(rdMoves["priority"]);
int target_id = Convert.ToInt32(rdMoves["target_id"]);

View File

@@ -492,19 +492,10 @@ namespace PkmnFoundations.Data
}
#endregion
/// <summary>
/// Coalesces nulls and DBNulls down to a default value
/// </summary>
/// <typeparam name="T">Return type</typeparam>
/// <param name="value"></param>
/// <param name="_default"></param>
/// <returns></returns>
/// <exception cref="System.InvalidCastException">value is neither null, DBNull, nor of type T</exception>
public static T Coalesce<T>(object value, T _default)
public static T Cast<T>(object value)
{
if (value == null) return _default;
if (value is DBNull) return _default;
return (T)value; // allow InvalidCastException to escape
if (value is DBNull) return default(T);
return (T)value;
}
}
}