NHibernate 之 “ 值“System.Object[]”不是“”类型,不能在此泛型集合中使用。 参数名: value”

        public IList<OutStorageDataView> GetItemList(int Brand_ID, int pageNo, int pageSize, out int TotalNumber)
        {                       
            IList<OutStorageDataView> List;
            ICriteria critRecordCount = NHibernateSessionReader.CreateCriteria(typeof(OutStorageDataView));          
            //查询总数(未入数据)
            TotalNumber = Convert.ToInt32(critRecordCount.SetProjection(Projections.Count("Item_ID")).UniqueResult());
            获得当前页的数据
            //ICriteria crit = NHibernateSessionReader.CreateCriteria(typeof(OutStorageDataView));
            //crit.Add(Restrictions.Eq("Brand_ID", Brand_ID));
            //crit.SetFirstResult((pageNo - 1) * pageSize)
            //                   .SetMaxResults(pageSize);
            //List = crit.List<OutStorageDataView>();
            //return List;
            //------------
            IQuery crit = NHibernateSessionReader.CreateSQLQuery("SELECT [Item_ID],[Item_Title],[Item_URL],[SearchEngine_Name],[Task_KeyWord],[Brand_Name],[Item_SDate],[Item_CDate],[Admin_Name],[Brand_ID] FROM [OutStorageDataView]");
            
            //crit.Add(Restrictions.Eq("Brand_ID", Brand_ID));
            crit.SetFirstResult((pageNo - 1) * pageSize)
                               .SetMaxResults(pageSize);
            //List = (List<OutStorageDataView>)crit.List<OutStorageDataView>();
            List = crit.List<OutStorageDataView>();
            return List;
        }

        #endregion
    }


报错:

值“System.Object[]”不是“IWOMTracker.Data.Model.OutStorageDataView”类型,不能在此泛型集合中使用。

参数名: value

修正:

List = crit.List<OutStorageDataView>();
因为默认返回的数值类型是 System.Object[] 不不是“IWOMTracker.Data.Model.OutStorageDataView”类型

改成:

IQuery crit = NHibernateSessionReader.CreateSQLQuery("SELECT [Item_ID],[Item_Title],[Item_URL],[SearchEngine_Name],[Task_KeyWord],[Brand_Name],[Item_SDate],[Item_CDate],[Admin_Name],[Brand_ID] FROM [OutStorageDataView]", "t", typeof(OutStorageDataView));
            //crit.Add(Restrictions.Eq("Brand_ID", Brand_ID));
            crit.SetFirstResult((pageNo - 1) * pageSize)
                               .SetMaxResults(pageSize);
            List = (List<OutStorageDataView>)(crit.List<OutStorageDataView>());
            return List;

进行强类型转换,就OK了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值