cmd.Parameters.AddWithValue nullable int

后端 未结 3 1667
后悔当初
后悔当初 2021-01-25 08:07

In my data layer class, I initialize a parameter like so:

private int? _DependencyID;

public int? DependencyID
{ get {return _DependencyID;} set {_DependencyID          


        
3条回答
  •  忘了有多久
    2021-01-25 09:00

    I have created an extension to simply the code.

    public static class SQLExtension
    {
        public static SqlParameter AddWithNullable(
            this SqlParameterCollection collection, 
            string parameterName, 
            Nullable value) where T : struct, IComparable
        {
            return collection.AddWithValue(
                parameterName, (value.HasValue ? value.Value : (object)DBNull.Value)
            );
        }
    }
    

    Here is how you can use it.

    cmd.AddWithNullable("@DependencyID", _DependencyID);
    

提交回复
热议问题