Salient Solutions

wrasslin ones and nones for fun and profit - Sky Sanders' Blog
posts - 96, comments - 70, trackbacks - 0

Generic NullSafe IDataRecord Field Getter

// usage
var name = GetValueOrDefault<string>(reader, "Name");
var name = reader.GetValueOrDefault<string>("Name");
var name = reader.GetValueOrDefault<string>(0);


// extension
public static T GetValueOrDefault<T>(this IDataRecord row, string fieldName)
{
    int ordinal = row.GetOrdinal(fieldName);
    return row.GetValueOrDefault<T>(ordinal);
}

public static T GetValueOrDefault<T>(this IDataRecord row, int ordinal)
{
    return (T)(row.IsDBNull(ordinal) ? default(T) : row.GetValue(ordinal));
}


Technorati tags: , ,

Print | posted on Tuesday, March 02, 2010 12:15 PM | Filed Under [ CodeProject-Tip ]

Feedback

No comments posted yet.

Post Comment

Title  
Name  
Email
Url
Comment   
Please add 2 and 1 and type the answer here:

Powered by: