es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Eliminar varias filas con IDs sin necesidad de bucle y prueba de Postman.

Tengo un pequeño problema. Pero no sé por qué no funciona. Y no sé cómo enviar todos los IDs a través de Postman.

Estoy utilizando una unidad de trabajo con un repositorio genérico. Quiero enviar int[] ids a mi controlador. No quiero enviar la entidad. He buscado mucho hoy. Y he cambiado mi código. ¿Pero cuál es el problema ahora?

Este es mi repositorio:

public async Task DeleteRangeAsync(Expression<><t, bool="">> predicate)
{
    IQueryable<t> query = _dbSet.Where(predicate);
    await Task.Run(() => { _dbSet.RemoveRange(query.AsNoTracking()); });
}

Este es mi KulturManager:

public async Task<iresult> HardDeleteRangeAsync(int[] ids)
{
    await UnitOfWork.Kulturs.DeleteRangeAsync(c => ids.Contains(c.Id));
    await UnitOfWork.SaveAsync();
    return new Result(ResultStatus.Success, Messages.Info("Kultur", "HardDelete"));
}

Y este es mi KulturController:

[HttpDelete("{ids}")]
public async Task<iactionresult> HardDeleteRangeAsync(int[] ids)
{
    var result = await _kulturManager.HardDeleteRangeAsync(ids);
    return Ok(result.Message);
}

Gracias por la ayuda.</t,>

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema podría estar en cómo estás enviando el array de ids a través de Postman. Para enviar un array a través de una solicitud HTTP, puedes utilizar el formato x-www-form-urlencoded y utilizar el mismo nombre de clave para cada valor. En este caso, utilizarías ids como la clave para cada id en el array:

    Ejemplo de cómo enviar un array de ids a través de Postman:
    1. Selecciona POST como el método de solicitud y agrega la URL de tu endpoint de KulturController.
    2. Selecciona la pestaña Body y elige la opción x-www-form-urlencoded.
    3. En el campo Key, ingresa ids[] y en el campo Value, ingresa cada id separado por una coma (por ejemplo, 1,2,3).
    4. Haz clic en Send y tu solicitud debería procesarse con los ids proporcionados.

    Otra cosa que debes verificar es si las instancias UnitOfWork y Kulturs están inicializadas y referenciadas correctamente en el constructor de KulturManager. Verifica que no sean nulas y que se estén inyectando/inicializando correctamente en el manager.

Comments are closed.