c# - 在 Xamarin.form 上访问 SQLite 数据库的最简单方法是什么?

标签 c# sqlite xamarin.forms

我使用 SQLite.net - PCL 创建了一个简单的本地数据库,并在其中插入了一些数据。我的问题是获取存储在数据库中的对象之一或所有对象的最简单方法是什么?

我的数据库:

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; }
    }
}

最佳答案

要从 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);  
}

希望这就是您要找的。如果我误解了,请告诉我。

谢谢。

关于c# - 在 Xamarin.form 上访问 SQLite 数据库的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43038299/

相关文章:

当值可以是数组或单个项目时,C# DataContractJsonSerializer 失败

sqlite - 使用 Azure 移动应用程序的 ionic 2 离线数据同步抛出 TypeError :Cannot read property 'openDatabase' of undefined

c++ - 是否推荐使用 PRAGMA synchronous=OFF 来提高性能

xaml - 使用 StringFormat、xamarin.forms 在 9 位绑定(bind)号码之间添加空格

xamarin.forms - Httpclient Xamarin Forms 调用在 Android 中不起作用

ios - 如何在 iOS 上旋转后修复 Xamarin Forms 中的 WebView 布局(WKWebView)

c# - 从 Swagger 中排除特定的枚举值

c# - 大括号触发编译器警告错误C#

c# - 转换日期格式

c++ - SQLite 动态表中的分页