首页 > 解决方案 > 如何在函数中创建 IDataParameter 并返回它?

问题描述

我不知道这个问题是如何正确的,但我的项目条件是我需要一个函数来获取值和参数名称并返回一个参数以在某些命令中使用。
我正在考虑的原型是这样的:

public IDataParameter CreateParameter(string parameterName, object value)

无论如何都要这样做吗?

标签: c#

解决方案


感谢@nvoigt,我为它创建了一个派生自 IDBDataParameter 的类,
我根据我的要求添加了两个构造函数。

public class MyClass: IDbDataParameter
{
    public MyClass(string parameterName, object value)
    {
        ParameterName = parameterName;
        Value = value;
    }
    public MyClass(string parameterName, object value, DbType dbType)
    {
        ParameterName = parameterName;
        Value = value;
        DbType = dbType;
    }
    public DbType DbType { get; set; }
    public ParameterDirection Direction { get; set; }
    public bool IsNullable => throw new NotImplementedException();
    public string ParameterName { get; set; }
    public string SourceColumn { get; set; }
    public DataRowVersion SourceVersion { get; set; }
    public object Value { get; set; }
    public byte Precision { get; set; }
    public byte Scale { get; set; }
    public int Size { get; set; }
}


并以这样的方法使用它们:

public IDbDataParameter CreateParameter(string parameterName, object value)
    {
        return new MyClass(parameterName, value);
    }



推荐阅读