C# 如何在Visual Studio 2015中为universal app创建本地数据库?
如何在visual studio 2015中为universal app创建本地数据库 我找不到任何解决办法。我找到了一些解决方案,如针对Windows Phone 8.1的SQLite,但这些解决方案在VS2015中不可用。有人能帮我创建这个本地数据库吗C# 如何在Visual Studio 2015中为universal app创建本地数据库?,c#,database,windows-phone-8.1,visual-studio-2015,win-universal-app,C#,Database,Windows Phone 8.1,Visual Studio 2015,Win Universal App,如何在visual studio 2015中为universal app创建本地数据库 我找不到任何解决办法。我找到了一些解决方案,如针对Windows Phone 8.1的SQLite,但这些解决方案在VS2015中不可用。有人能帮我创建这个本地数据库吗 我想创建一个WP 8.1应用程序,并为手机本身建立一个本地数据库。我不想要任何像Azure这样的在线数据库。您必须根据项目类型安装正确的VS扩展。对于通用应用程序,正确的扩展名为“SQLite For universal app Platfo
我想创建一个WP 8.1应用程序,并为手机本身建立一个本地数据库。我不想要任何像Azure这样的在线数据库。您必须根据项目类型安装正确的VS扩展。对于通用应用程序,正确的扩展名为“SQLite For universal app Platform”,可以在此处下载:。对于WP 8.1项目,正确的扩展是SQLite For Windows Phone 8.1 接下来,您必须在您的项目中添加一个引用(可用于上一个扩展):References>universalwindows>Extensions>SQLite for universalapp平台 为了简单起见,您需要一个nuget包:SQLite-Net-PCL(keep-case) 在代码中,可以创建具有某些属性的实体:
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);
}
});
等待任务。运行(()=>
{
isqliteformplatform=new SQLite.Net.platform.WinRT.SQLitePlatformWinRT();
使用(SQLiteConnection连接=新的SQLiteConnection(平台,Path.Combine(ApplicationData.Current.LocalFolder.Path,“mydb.db”))
{
connection.CreateTable();//如果不存在则创建
var测试=新测试
{
Value=“测试”
};
连接。插入(测试);
//var lastinertedid=platform.SQLiteApi.lastinertrowid(connection.Handle);
var lastInsertedId=test.Id;//更简单
var值=connection.Find(lastInsertedId);
Debug.WriteLine(值);
}
});
注意:api是完全同步的,因此Task.Run(就像我的示例中一样)可能是一个很好的实践。您必须根据项目类型安装正确的VS扩展。对于通用应用程序,正确的扩展名为“SQLite For universal app Platform”,可以在此处下载:。对于WP 8.1项目,正确的扩展是SQLite For Windows Phone 8.1 接下来,您必须在您的项目中添加一个引用(可用于上一个扩展):References>universalwindows>Extensions>SQLite for universalapp平台 为了简单起见,您需要一个nuget包:SQLite-Net-PCL(keep-case) 在代码中,可以创建具有某些属性的实体:
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);
}
});
等待任务。运行(()=>
{
isqliteformplatform=new SQLite.Net.platform.WinRT.SQLitePlatformWinRT();
使用(SQLiteConnection连接=新的SQLiteConnection(平台,Path.Combine(ApplicationData.Current.LocalFolder.Path,“mydb.db”))
{
connection.CreateTable();//如果不存在则创建
var测试=新测试
{
Value=“测试”
};
连接。插入(测试);
//var lastinertedid=platform.SQLiteApi.lastinertrowid(connection.Handle);
var lastInsertedId=test.Id;//更简单
var值=connection.Find(lastInsertedId);
Debug.WriteLine(值);
}
});
注意:api是完全同步的,因此Task.Run(就像我的示例中一样)是一个很好的实践。您可以使用您可以使用的