0

我首先使用实体​​框架代码并从我们的数据库中提取一些数据。在我正在访问的表中,有 13 个列将客户在过去 13 周内每周购买的商品数量存储为 char 字段。我无法控制这些数据的存储方式。我需要将 13 周的结果加起来才能得到总和,所以取第 1 周 + 第 2 周 + 第 3 周 .... = 13 周内购买的物品总数。

在 SQL 中,我只是将 char 转换为 Integer 并将值相加。但我正在努力寻找在 linq 中执行此操作的解决方案。

我试过

(From c in Table
Select New With {.Usage = (Convert.ToInt32(c.week1) + 
                           Convert.ToInt32(c.week2) + etc)}).ToList()

以及尝试使用 Integer.Parse 而不是 Convert.ToInt32。

如果您有任何可以帮助我的东西,我将不胜感激。谢谢。

4

1 回答 1

2

EF 无法将 Convert.Int32 (以及许多其他 LINQ 语句......)转换为 SQL。您应该只使用 LINQ to Entities 正常执行查询,然后在 LINQ 之外执行转换。

于 2012-05-11T06:16:02.743 回答