2017-03-27 73 views
1

我使用SQLite.net - PCL創建了一個簡單的本地數據庫,並在其中插入了一些數據。我的問題是,獲取其中一個對象或所有對象存儲在數據庫中的最簡單方法是什麼?在Xamarin.form上訪問SQLite數據庫的最簡單方法是什麼?

我的數據庫:

namespace DatabaseDemo 
{ 
    public class Database 
    { 
     readonly SQLiteAsyncConnection _database; 

     public Database(string path) 
     { 
      _database = new SQLiteAsyncConnection(path); 
      _database.CreateTableAsync<Model>().Wait(); 
     } 

     public Task<int> SaveItemAsync(Model person) 
     { 
      if (person.ID != 0) 
      { 
       return _database.UpdateAsync(person); 

      } 
      else 
      { 
       return _database.InsertAsync(person); 
      } 
     } 
    } 
} 

我的模型類:

namespace DatabaseDemo 
{ 
    public class Model 
    { 
     [PrimaryKey, AutoIncrement] 
     public int ID { get; set; } 
     public string Name { get; set; } 
    } 
} 
+0

這是相當有據可查的 - https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/databases/ – Jason

+0

本教程使用Listview來顯示所有數據,但我只是想打印一些應用程序輸出數據。這就是爲什麼我在這裏發帖 –

+1

你問到訪問本地數據庫,無論你是否使用ListView或寫入控制檯,這都是一樣的。僅僅因爲教程沒有完成你需要的完全一樣的東西並不意味着你不能從中學習。 – Jason

回答

3

檢索從SQLite數據庫中的數據,你可以使用下面的方法。

恢復所有:

public IEnumerable<Model> GetModels() 
{ 
    return (from t in _database.Table<Model>() select t).ToList(); 
} 

,並檢索選擇ID:

public Model GetModel(int id) 
{ 
    return _sqlconnection.Table<Model>().FirstOrDefault(t => t.Id == id); 
} 

希望這是你在找什麼。或者如果我誤解了,請告訴我。

謝謝。

+1

非常感謝,我會嘗試 –

+0

錯誤說'選擇'找不到,有什麼想法? –

+0

希望你已經添加了參考'System.Linq' –

相關問題