我有一个包含在从存储过程返回的var中的SqlParameter,其值为Null,一个int或-1。如何在var中检查它是否在C#中为-1?C#中的SqlParameter强制转换#
var p_eventID = new SqlParameter()
{
ParameterName = "@EventID",
Value = (eventID.HasValue
? (object)eventID.Value
: (object)System.Data.SqlTypes.SqlInt32.Null),
Direction = ParameterDirection.InputOutput
};
我曾尝试:
if ((int?)eventID.Value == -1)
但它给我一个无效的转换错误。
请显示代码从SqlParameter中拉出的位置。什么是'eventID'的类型? – 2014-08-28 16:29:52
你的程序在哪个数据库中?不同的数据库返回不同类型 – 2014-08-28 16:31:20
你在[DBNull]之后(http://msdn.microsoft.com/en-us/library/system.dbnull%28v=vs.110%29.aspx)? – 2014-08-28 16:31:23