繁体   English   中英

如何在Visual Studio 2015中为通用应用程序创建本地数据库?

[英]How to create local database for universal app in Visual Studio 2015?

如何在Visual Studio 2015中为通用应用程序创建本地数据库?

我找不到任何解决方案。 我找到了一些解决方案,例如用于Windows Phone 8.1的SQLite,但这些解决方案在VS2015中不可用。 谁能帮助我如何创建此本地数据库?

我想创建一个WP 8.1应用程序,并为手机本身创建一个本地数据库。 我不要像Azure这样的在线数据库。

您必须根据项目类型安装正确的VS扩展。 对于通用应用程序,正确的扩展名为“通用应用程序平台的SQLite”,可以在此处下载: https : //visualstudiogallery.msdn.microsoft.com/4913e7d5-96c9-4dde-a1a1-69820d615936?SRC=VSIDE 对于WP 8.1项目,正确的扩展名是Windows Phone 8.1的SQLite。

接下来,您必须在您的项目中添加参考(可使用先前的扩展名):参考> Universal Windows> Extensions> SQLite for Universal App Platform。

为简单起见,您需要一个nuget包:SQLite-Net-PCL(保留大小写)。

在代码中,您可以创建具有一些属性的实体:

public class Test
{
    [PrimaryKey, AutoIncrement]
    public int Id { get; set; }

    public string Value { get; set; }
}

接下来,您可以通过以下方式打开一个连接填充并读取数据库:

await Task.Run(() =>
{
    ISQLitePlatform platform = new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT();
    using (SQLiteConnection connection = new SQLiteConnection(platform, Path.Combine(ApplicationData.Current.LocalFolder.Path, "mydb.db")))
    {
        connection.CreateTable<Test>(); // create if not exists
        var test = new Test
        {
            Value = "test"
        };
        connection.Insert(test);
        //var lastInsertedId = platform.SQLiteApi.LastInsertRowid(connection.Handle);
        var lastInsertedId = test.Id; // more simple
        var value = connection.Find<Test>(lastInsertedId);
        Debug.WriteLine(value);
    }
});

注意:api是完全同步的,因此Task.Run(如我的示例中)可能是一个好习惯。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM