/// <summary> /// Batch inserts a collection of <c>Device</c> objects. /// </summary> /// <param name="devices"></param> public void Insert(IEnumerable <Device> devices) { using (var conn = new NpgsqlConnection(dbAccess.connectionString)) { using (var db = new NPoco.Database(conn)) { db.Connection.Open(); db.InsertBatch <DeviceDto>(DeviceDto.Translate(devices.ToList())); db.Connection.Close(); } } }
/// <summary> /// Insert a single <c>Device</c> object. /// </summary> /// <param name="device"></param> public void Insert(Device device) { using (var conn = new NpgsqlConnection(dbAccess.connectionString)) { using (var db = new NPoco.Database(conn)) { db.Connection.Open(); db.Save <DeviceDto>(DeviceDto.Translate(device)); db.Connection.Close(); } } }
/// <summary> /// Deletes a <c>DeviceDto</c> object. /// </summary> /// <param name="device">A <c>Device</c>. This will be translated to a <c>DeviceDto</c> before the update operation.</param> /// <returns><c>int</c> denoting the success value of the operation.</returns> public int Remove(Device device) { int res; using (var conn = new NpgsqlConnection(dbAccess.connectionString)) { using (var db = new NPoco.Database(conn)) { db.Connection.Open(); res = db.Delete(DeviceDto.Translate(device)); db.Connection.Close(); } } return(res); }
/// <summary> /// Partial update for <c>DeviceDto</c> by only updating the specified columns. /// </summary> /// <param name="docId"></param> /// <param name="device"></param> /// <param name="ops">A <c>string</c> collection </param> /// <returns></returns> public int PartialUpdate(Guid docId, Device device, IEnumerable <string> ops) { int res; using (var conn = new NpgsqlConnection(dbAccess.connectionString)) { using (var db = new NPoco.Database(conn)) { db.Connection.Open(); res = db.Update(DeviceDto.Translate(device), docId, ops); db.Connection.Close(); } } return(res); }