适用于 Windows Phone 应用程序的 SQLite select 语句
本文关键字:SQLite select 语句 应用程序 Windows Phone 适用于 | 更新日期: 2023-09-27 18:35:31
我正在为Windows Phone创建一个应用程序,我需要为它创建一个数据库连接,我已经使用了SQLite。从这个链接,我执行了查询:http://www.codeguru.com/csharp/.net/wp7/using-sqlite-in-your-windows-phone-application.htm
这是代码:
private void btncreate_Click(object sender, RoutedEventArgs e)
{
if (MySqlLiteDB == null)
{
MySqlLiteDB = new SQLiteConnection("MyTestDB");
MySqlLiteDB.Open();
MessageBox.Show("Connection opened Successfully!!!");
}
}
private void btnpopulate_Click(object sender, RoutedEventArgs e)
{
SQLiteCommand cmd=MySqlLiteDB.CreateCommand("Create table student(id int primary key,name text,zipcode numeric(7))");
int i = cmd.ExecuteNonQuery();
int id = 0;
for (int j = 0; j < 20; j++)
{
id++;
string name = "Name" + id;
int zipcode = 98000 + id;
cmd.CommandText = "Insert into student(id,name,zipcode) values(" + id + ",'"" + name + "'"," + zipcode + ")";
i = cmd.ExecuteNonQuery();
}
MessageBox.Show("Insert successful");
}
private void btnclear_Click(object sender, RoutedEventArgs e)
{
SQLiteCommand cmd = MySqlLiteDB.CreateCommand("drop table student");
int i = cmd.ExecuteNonQuery();
MessageBox.Show("Data Cleared successfully");
}
private void btnclose_Click(object sender, RoutedEventArgs e)
{
if (MySqlLiteDB != null)
{
MySqlLiteDB.Dispose();
MySqlLiteDB = null;
MessageBox.Show("Connection closed");
}
}
但是现在我需要从数据库表中检索数据并使用 select 语句将其绑定到网格,我该怎么做?我想在网格中显示表数据,有什么方法可以将数据绑定到网格。
在代码中添加以下函数和类
public class student
{
public int id {get;set;}
public string name {get;set;}
public long zipcode {get;set;}
}
SelectFromStudent()
{
string query="select id,name,zipcode from student";
List<student> studentList = SelectFromTable<student>(query);
}
List<T> SelectFromTable<T>(String statement) where T : new()
{
SQLiteCommand cmd = MySqlLiteDB.CreateCommand(statement);
var lst = cmd.ExecuteQuery<T>();
return lst.ToList<T>();
}
您不能在 Windows Phone 应用程序中使用网格绑定数据。 还有另一个控件可以执行此类操作列表框。 您可以编辑列表框的项模板。列表框具有项源属性。