首页 > 解决方案 > 如何在 Dynamic Linq Core 中显式转换类型?

问题描述

我在这里阅读了有关 Dynamic Linq Core 的文档,其中说

表达式语言允许使用语法类型 ( expr ) 进行显式转换,其中 type 是类型名称,可选地后跟 ? expr是一个表达式。此语法可用于执行以下转换:

按照这个说明我有一个很难的类型,到目前为止我试过了

.Select("new (Key.Date, Key.t, Sum(cashflow) as Profit, (double)Sum(cashflow) as TestConvertType)");

.Select("new (Key.Date, Key.t, Sum(cashflow) as Profit, Sum(cashflow).type(double) as TestConvertType)");

我得到了

“'。' 或 '(' 或字符串文字预期"

我也试过:

.Select("new (Key.Date, Key.t, Sum(cashflow) as Profit, Convert.ToDouble(Sum(cashflow)) as TestConvertType)");

“LINQ to Entities 无法识别 'System.Decimal ToDecimal(Double)' 方法,并且此方法无法转换为存储表达式。”

没有工作。有人可以给我一个关于如何在 Dynamic Linq 中显式转换类型的例子吗?

标签: c#sqlasp.netentity-frameworkdynamic-linq-core

解决方案


好的..只需使用类型(表达式)

.Select("new (Key.Date, Key.t, Sum(cashflow) as Profit, Double(Sum(cashflow)) as TestConvertType)");

推荐阅读