如何使用SQL服务器时间数据类型?

时间:2013-03-13 07:10:46

标签: c# sql-server

我正在使用SQL服务器时间数据类型,我已经创建了一个sp,它返回该表中的记录, 但它抛出异常

'Unable to cast object of type 'System.TimeSpan' to type 'System.IConvertible''

我检查了InnerException及其说法

 'Input String was not in correct format'

当我在SQL服务器上运行查询时,它正常运行 下面是我表格的结构

Id bigint
Name varchar(100)
timefrom time(0)
timeto time(0)
下面是我的sp

  SELECT * FROM Table1 where condition

我正在使用NHibernate进行数据访问

public System.Collections.IList GetData(long id)
        {
            string connectionStr = ConfigurationManager.ConnectionStrings["FNHConnection"].ConnectionString;
            IDbConnection conn;
            conn = new SqlConnection(connectionStr);
            conn.Open();
            ISessionFactory sessionFactor = HibernateTemplate.SessionFactory;
            ISession session = sessionFactor.OpenSession(conn);

            var result = session.CreateSQLQuery("exec dbo.gen_GetData ?")
                .SetParameter(0, id)
            .List();

            return result;
        }

上抛出异常

var result = session.CreateSQLQuery(“exec dbo.gen_GetData?”)                 .SetParameter(0,id)             .LIST();

1 个答案:

答案 0 :(得分:0)

尝试从以下链接中找到解决方案:http://msdn.microsoft.com/en-us/library/bb675168.aspx 还有一个链接,可能很有用:http://blogs.msdn.com/b/usisvde/archive/2007/11/14/time-for-ado-net.aspx