EntLib将“空”值绑定到参数的方法

时间:2009-08-10 00:28:38

标签: enterprise-library

我希望将Null Value传递给参数,如下所示:

_db.AddInParameter(dbCommand,“Id”, DBNull.Value ,myContactPerson.Id);

我收到以下错误:

无法将System.DBNull转换为System.Data.DbType”

我知道这个错误的含义。

但我需要为myContactPerson.Id提供空值

我怎样才能实现这个目标?

3 个答案:

答案 0 :(得分:1)

如果myContactPerson.Id不是自动编号,那么为什么不传递0。

答案 1 :(得分:0)

DBType应该在该参数中传递,并且应该与您在数据库中比较的表的dbtype(string,int等)相匹配。您将使用DBNull.Value替换值字段“myContactPerson.Id”以始终传递空值。

答案 2 :(得分:0)

根据ADO.NET,您可以将DBNull传递给任何DbParameter。

代码应改写为:


_db.AddInParameter(dbCommand, "Id", DbType.Int32, DBNull.Value);