public void DeleteGenerator_EntityType_Valid() { var sql = generator.GenerateDelete <Product>(x => x.Price > 5, out IList <QueryInfo> queryParameters); var expected = "DELETE FROM `Product` WHERE `Price` > @Price;"; Assert.AreEqual(expected, sql); Assert.AreEqual(5, queryParameters.First(x => x.ParameterName == "Price").PropertyValue); }
public virtual int DoDelete <T>(T entity, Func <T, bool> resultAction = null) where T : class { TryGetFromCache(out string query, out IList <QueryInfo> queryParameters); query = query ?? _queryGenerator.GenerateDelete(entity, out queryParameters); TrySetCache(query, queryParameters); var cmd = new DotEntityDbCommand(DbOperationType.Delete, query, queryParameters); DotEntityDbConnector.ExecuteCommand(cmd); return(cmd.GetResultAs <int>()); }