Bonjour à tous,
j'ai une page qui m'affiche des données avec 2 champs select date.
Comment faire dans mon controller pour mettre des filtres sur les dates ? qui correspondraient aux champs start and end..
voici mon bout de code dans l'API
mon modèle
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 // GET: api/Lots [HttpGet] public async Task<ActionResult<IEnumerable<Lot>>> GetLots() { return await _context.Lots.ToListAsync(); }ma page razor
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 namespace ASE.Models { public class Lot { [Required] public int LotID { get; set; } public DateTime Start { get; set; } public DateTime End { get; set; } public string? Numero { get; set; } public int? Trieurs { get; set; } } }
dans ma fonction HandleValidSubmit je ne sais pas comment passer mes données date en paramètre...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72 <div class="row"> <div class="col-lg-12"> <div class="card"> <div class="card-header"> <div class="form-inline"> <EditForm Model="@ListLots" OnValidSubmit="@HandleValidSubmit"> <input type="datetime" @bind="dateDebut" placeholder="Date de début" class="form-control" id="DebDateDefaut"> <div class="input-group-append"><i class="fa fa-calendar"></i></div> <input type="text" @bind="dateFin" placeholder="Date de fin" class="form-control" id="FinDateDefaut"> <div class="input-group-append"><i class="fa fa-calendar"></i></div> <div class="input-group-append"> <button type="submit" class="btn btn-light ms-2">Rechercher</button> </div> </EditForm> </div> </div> <div class="card-body"> <table id="file-datatable" class="display nowrap" width="100%"> <thead> <tr> <th>Date début</th> <th>Date fin</th> <th>Numéro</th> <th>Trieurs</th> </tr> </thead> <tbody> @foreach(var lot in ListLots) { <tr @onclick="() => EditLot(lot.LotID)"> <td>@lot.Start</td> <td>@lot.End</td> <td>@lot.Numero</td> <td>@lot.Trieurs</td> </tr> } </tbody> </table> </div> </div> </div> </div> @code { private List<Models.Lot> ListLots; [Parameter] public DateTime dateDebut { get; set; } [Parameter] public DateTime dateFin { get; set; } protected override async Task OnInitializedAsync() { try { dateFin = DateTime.Now; ListLots = await Http.GetFromJsonAsync<List<Models.Lot>>("api/Lots"); StateHasChanged(); } catch (Exception ex) { Console.WriteLine(ex); } } public void HandleValidSubmit() { var ListLots = Http.GetFromJsonAsync<List<Models.Lot>>("api/Lots/StartDebLot='"+dateDebut+"'&&StartFinLot='"+dateFin+"'"); // Process the valid form }
merci beaucoup pour votre aide.
Partager