簡體   English   中英

SQLite查詢列表對象僅包含默認屬性值

[英]SQLite query list objects contain only default property values

我正在嘗試在Xamarin.Forms Android應用程序中使用SQLite數據庫。 查詢表時,我在獲取列以映射到Game類中的屬性時遇到問題。 所有屬性均以null返回。

我有一個包含多個字段的類GameNameType ,...

public class Game {
    public string Name { get; set; }
    public int MinPlayers { get; set; }
    public int MaxPlayers { get; set; }
    public string Type { get; set; }
    public string IsParty { get; set; }
}

我的桌子看起來像這樣:

Games

| Name  | MinPlayers | MaxPlayers | Type | IsParty |
----------------------------------------------------
| Catan | 2          | 5          | Base | false   |

在我的代碼中,我目前正在嘗試對此執行查詢,並得到了意外的結果。

查詢的代碼如下:

List<Game> games;

string query = "SELECT Name, MinPlayers, MaxPlayers, Type, IsParty FROM Games WHERE MinPlayers <= 4 AND MaxPlayers >= 4;";

using (var connection = new SQLiteConnection(_dbPath)) {
    games = connection.Query<Game>(query).ToList();
};

執行查詢時,我將返回包含預期結果數的Game對象列表。 但是,當檢查每個對象的內容時,所有屬性均為null

從“ VS調試器locals窗口中:

games
  |
  -- [0]
      |
      -- IsParty: null
      |
      -- MaxPlayers: 0
      |
      -- MinPlayers: 0
      |
      -- Name: null
      |
      -- Type: null

列表中的所有條目都是相同的。 我以前使用此代碼並獲得了預期的結果,但是我需要更改表的布局,此后一直遇到這個問題。 我已經檢查了屬性的名稱,以確保它們與表列匹配,但是這似乎不是問題。

如果我缺少任何重要信息,我很樂意提供。

您是否嘗試過運行此命令以查看其是否返回了某些內容?您可以使用SQLiteStudio或SQLite Prime(Android)之類的軟件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM