Kezdőoldal » Számítástechnika » Programozás » Nem működik a debug?

Nem működik a debug?

Figyelt kérdés

[HttpGet]

public async Task<IActionResult> NeedVaccination()

{

List<Animal> animals = new List<Animal>();

List<Animal> data = new List<Animal>();

data = await _db.Animals.ToListAsync();

var j = 0;

for (var i = 0; i < data.Count; i++)

{

if (data[i].LastVaccination.AddDays(2) < DateTime.Now)

{

animals[j] = data[i];

j++;

}

}

return Ok(animals);

}


Van itt ez a kód és mikor eljut a animals[j] = data[i]; sorba csak simán visszadob a weboldalra, semmit nem ír ki, hogy mi is a gond. Pedig az elágazásba belemegy. Mindkét lista Animal típusú, ha csak a data-t adom vissza és azt kiíratom, tökéletesen működik. Amit szeretnék az az, hogy ha az utolsó oltástól számított 2 nap a mai dátumnál régebbi, akkor azt beleteszem egy listába és az új listát adom vissza, amiben a már kigyűjtött adat van.


2020. szept. 27. 18:32
 1/2 anonim ***** válasza:
Ránézésre az animals lista üres, szóval ott te baromira nem fogsz elemekhez index alapján hozzáférni, mivelhogy nincs is benne.
2020. szept. 27. 19:59
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:

animals.Add(data[i]);


Egyébként nézz utána a LINQ névtérben levő extension method-oknak és a lambda expression-öknek, a kiválogatás tétele helyett azt hiszem a Where() metódus lenne hasznos ide.


Telefonról írok, szóval se Visual Studio, se kipróbálni nem tudom, de ilyesmi kellene:


var animals = data.Where(animal => animal.LastVaccination.AddDays(2) < DateTime.Now);

2020. szept. 27. 22:54
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!