Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# HQL在select NHIBERNATE中返回双精度值_C#_Nhibernate_Asp.net Mvc 5 - Fatal编程技术网

C# HQL在select NHIBERNATE中返回双精度值

C# HQL在select NHIBERNATE中返回双精度值,c#,nhibernate,asp.net-mvc-5,C#,Nhibernate,Asp.net Mvc 5,我有这个查询,它应该返回double(即数据库中的Decimal(10,2)): 公共产品搜索价格(字符串nmproduct) { string hql=“从产品x中选择x.custo,其中x.nmproduct=?”; IQuery=session.CreateQuery(hql); query.SetParameter(0,nmproduct); 返回query.UniqueResult(); } 我想在数据库中得到价格 例外情况是: 无法将“System.Decimal”类型的对象强制转

我有这个查询,它应该返回double(即数据库中的
Decimal(10,2)
):

公共产品搜索价格(字符串nmproduct)
{
string hql=“从产品x中选择x.custo,其中x.nmproduct=?”;
IQuery=session.CreateQuery(hql);
query.SetParameter(0,nmproduct);
返回query.UniqueResult();
}
我想在数据库中得到价格

例外情况是:

无法将“System.Decimal”类型的对象强制转换为“Administrative.Models.products”类型


如果要将十进制值转换为实体,则需要使用:

query.UniqueResult<decimal>()
query.uniquerysult()

当您表示货币时,您需要使用
decimal
而不是
double
,为了不失去准确性,请阅读。

如果您要将十进制值转换为您的实体,您需要使用:

query.UniqueResult<decimal>()
query.uniquerysult()

当您表示货币时,您需要使用
decimal
而不是
double
以避免丢失准确性,请阅读。

谢谢,它解决了问题。只需要换成十进制
public decimal SearchPrice(string nmproduct){string hql=“从产品x中选择x.custo,其中x.nmproduct=?”;IQuery query=session.CreateQuery(hql);query.SetParameter(0,nmproduct);return query.UniqueResult();}
谢谢,它解决了这个问题。只需要换成十进制
public decimal SearchPrice(string nmproduct){string hql=“从产品x中选择x.custo,其中x.nmproduct=?”;IQuery query=session.CreateQuery(hql);query.SetParameter(0,nmproduct);return query.UniqueResult();}