【问题标题】:Xamarin Forms - SQLITE QueryXamarin 表单 - SQLITE 查询
【发布时间】:2018-06-15 23:07:35
【问题描述】:

很抱歉,这很简单,但我无法理解它。我已经检查了互联网并搜索了答案,但我找不到针对我的问题的特定答案,或者我只是不知道如何寻找它。我在 Xamarin Forms 中相当新,我在使用 SQLite 时遇到了这个问题;我能够从列中获取所有值并将其显示到 ListView。现在,我想在 ListView 中显示项目的总和,但我根本无法得到它。到目前为止,数据库有两个条目,分别是 20 和 5 到我想要得到总和的列。到目前为止,这是我尝试过的:

var getSum = conn.Query<tblAccount>("Select sum(ac_income) from tblAccount where ac_date between ? and ? and ac_incomeOrExpense =?", dpIncomeFrom.Date, dpIncomeTo.Date, "income").ToList();

//第一次尝试-返回一长串列描述

var getSum = conn.Table<tblAccount>().Where(u => u.ac_incomeOrExpense =="income").Sum(a => a.ac_income);

//这显示了与以下代码相同的内容,但仍然不是我正在寻找的正确结果

var getSum = conn.Table<tblAccount>().Sum(a => a.ac_income);
//for some reason this gives a result of 87 - don't know where it's getting that

虽然很明显,但我仍在思考如何使用 Xamarin 表单正确调用查询。如果有人可以提供帮助或至少提供如何调用查询并正确显示它的示例,我将不胜感激。谢谢。

【问题讨论】:

  • 你得到了 87,这可能是正确的。添加这一行并在其上放置一个断点:var zzz = conn.Table();。然后执行该行,看看zzz里面是什么。
  • 我添加并运行它,它显示它的值为:{SQLite.TableQuery} 不确定它是如何获得 87 的,我正在研究如何让它显示 25 (20 + 5) 分别是 2 行的总和。
  • 另外,我只是在研究如何获取列表视图中值的总和。这些行正在我的列表视图中显示。所以第 1 行 = 20 第 2 行 = 5。我只想得到这些的总和并将其显示在标签中。
  • 您是否能够深入研究结果并查看记录?
  • @dev1998 我能够显示它。谢谢。我发布了代码。非常感谢!

标签: sqlite mobile xamarin.forms


【解决方案1】:

我能够弄清楚。我能够得到整列(2 行)的总和并显示为 25。

代码:

var zzz = conn.Table<tblAccount>()
   .Where(p => p.ac_incomeOrExpense=="income");

lblTotalIncome.Text = "Total Income: " + zzz.Sum(p => p.ac_income);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 2018-11-26
    • 2017-06-24
    • 2018-12-30
    相关资源
    最近更新 更多