public int Delete <T>(T item) { if (item == null) { throw new ArgumentNullException(nameof(item)); } var sql = _sqlQueryBuilder.DeleteSql <T>(); object[] values = new object[1] { _sqlQueryBuilder.GetPrimaryKeyValue(item) }; return(Execute(sql, values)); }