public Word GetItem(int id) { var t = new Word (); lock (locker) { connection = new SqliteConnection ("Data Source=" + path); connection.Open (); using (var command = connection.CreateCommand ()) { command.CommandText = "SELECT [_id], [Name], [Definition], [Score] from [Items] WHERE [_id] = ?"; command.Parameters.Add (new SqliteParameter (DbType.Int32) { Value = id }); var r = command.ExecuteReader (); while (r.Read ()) { t = FromReader (r); break; } } connection.Close (); } return t; }
/// <summary>Convert from DataReader to Word object</summary> Word FromReader(SqliteDataReader r) { var t = new Word (); t.ID = Convert.ToInt32 (r ["_id"]); t.Name = r ["Name"].ToString (); t.Definition = r ["Definition"].ToString (); t.Score = Convert.ToInt32( r ["Score"]); //Convert.ToInt32 (r ["Score"]) == 1 ? true : false; return t; }
public static int SaveWord(Word item) { return WordRepositoryADO.SaveWord(item); }
public int SaveItem(Word item) { int r; lock (locker) { if (item.ID != 0) { connection = new SqliteConnection ("Data Source=" + path); connection.Open (); using (var command = connection.CreateCommand ()) { command.CommandText = "UPDATE [Items] SET [Name] = ?, [Definition] = ?, [Score] = ? WHERE [_id] = ?;"; command.Parameters.Add (new SqliteParameter (DbType.String) { Value = item.Name }); command.Parameters.Add (new SqliteParameter (DbType.String) { Value = item.Definition }); command.Parameters.Add (new SqliteParameter (DbType.Int32) { Value = item.Score }); command.Parameters.Add (new SqliteParameter (DbType.Int32) { Value = item.ID }); r = command.ExecuteNonQuery (); } connection.Close (); return r; } else { connection = new SqliteConnection ("Data Source=" + path); connection.Open (); using (var command = connection.CreateCommand ()) { command.CommandText = "INSERT INTO [Items] ([Name], [Definition], [Score]) VALUES (? ,?, ?)"; command.Parameters.Add (new SqliteParameter (DbType.String) { Value = item.Name }); command.Parameters.Add (new SqliteParameter (DbType.String) { Value = item.Definition }); command.Parameters.Add (new SqliteParameter (DbType.Int32) { Value = item.Score }); r = command.ExecuteNonQuery (); } connection.Close (); return r; } } }
public static int SaveWord(Word item) { return me.db.SaveItem(item); }