【问题标题】:i need to retrieve last data row single data我需要检索最后一个数据行单个数据
【发布时间】:2019-07-19 17:13:01
【问题描述】:

我需要检索最后一行数据字段。 id 是我表的主键。我正在尝试使用其 id 检索我的最后一行数据

public AddExpenses[] GetFinalExpense(int numberOfExpenses)
{
    return Conn.Table<AddExpenses>()
               .OrderByDescending(expenses => expenses.Id)
               .Take(numberOfExpenses)
               .ToArray();
}

在我的视图模型中

var finalexpense = database.GetFinalExpense(1);

这是我的代码。当我尝试使用最后一行数据来检索单个数据时

ExpenseLabel = "Your expense is"+finalexpense;

在此处的最终费用中,它不显示要调用的表的属性。我需要我的 finalexpense 属性来调用它不起作用

【问题讨论】:

  • finalexpense 不会显示任何属性,因为finalexpense 是数组。

标签: sqlite mvvm xamarin.forms


【解决方案1】:

将字符串与对象连接使用ToString 的默认实现,如果finalexpense 具有值!=null,它将为您生成类似AddExpenses[] 的内容,因为它是一个数组。

首先,您必须获取数组中的项目

var finalExpenses = database.GetFinalExpense(1);
var finalExpense = finalExpenses[0];

此外,您还必须确保您的对象格式正确。您可以在 AddExpenses 类中实现自己的 ToString 方法,但最简单的方法是使用字符串插值

var formattedExpense = $"{finalExpense.Expense} ({finalExpense.Date}, {finalExpense.Category})"; 
ExpenseLabel = $"Your expense is {formattedExpense}";

如何构建formattedExpense 由您决定,以建议的字符串为起点并根据您的需要进行调整。

【讨论】:

    猜你喜欢
    • 2014-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-12
    • 2017-09-19
    • 1970-01-01
    • 2010-09-18
    • 1970-01-01
    相关资源
    最近更新 更多