Der DataReader gibt immer ein object zurück, das entsprechend in den richtigen Typ gecastet werden muss. Diese Aufgabe wird mit dieser Hilfsmethode vereinfacht.
Beispiel:
dealer.Country = reader["Country"].ToSaveType<string>();
dealer.Latitude = reader["Latitude"].ToSaveType<decimal>();
dealer.CategoryMark = reader["Category"].ToSaveType<int>();
public static class ExtensionMethods
{
public static T ToSaveType<T>(this object o)
{
if (o.GetType() == typeof(DBNull))
return default(T);
else
return (T)o;
}
}
Kommentare zum Snippet