Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using SQLite;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using Xamarin.Forms;
- namespace SQLiteNetPCLVS
- {
- public class ItemDatabaseBasic
- {
- protected static object locker = new object();
- protected static SQLiteConnection database;
- public ItemDatabaseBasic()
- {
- database = DependencyService.Get<IDatabase>().DBConnect();
- database.CreateTable<Item>();
- }
- public IEnumerable<Item> GetItems ()
- {
- lock (locker)
- {
- return (from i in database.Table<Item>() select i).ToList();
- }
- }
- public IEnumerable<Item> GetFirstItems()
- {
- lock (locker)
- {
- return (from i in database.Query<Item>("SELECT * FROM Item WHERE Name = 'First'"));
- }
- }
- public Item GetItem(int id)
- {
- lock (locker)
- {
- return database.Table<Item>().FirstOrDefault(x => x.ID == id);
- }
- }
- public int SaveItem(Item item)
- {
- lock (locker)
- {
- if (item.ID != 0)
- {
- database.Update(item);
- return item.ID;
- } else
- {
- return database.Insert(item);
- }
- }
- }
- public int DeleteItem(int id)
- {
- lock (locker)
- {
- return database.Delete<Item>(id);
- }
- }
- public void DeleteAllItems()
- {
- lock (locker)
- {
- database.DropTable<Item>();
- database.CreateTable<Item>();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment