I am new to blazor and currently, I am trying to search data/information in the database using Form in blazor. I tried everything from the net and I can't seem to find the right choice for it. I'm using onion structure in the blazor server.
@using Microsoft.AspNetCore.Mvc.Rendering @using UIDesign.Core.Entities @using Microsoft.AspNetCore.Components.Forms @using UIDesign.Application.Interfaces @inherits LayoutComponentBase @using System.Net.Http @using System.Net.Http.Json @using UIDesign.Core.Enums @using UIDesign.Core.Interfaces @inject IProductPostLaunchService productservice @inject IProductPostLaunchRepository productrepository @inject HttpClient Http @inject NavigationManager Navigate<div class="page"><main><div id="Banner"><img src="images/IQNET_LOGO-removebg-preview.png" alt="Banner Image" class="banner-image" id="BannerImage" /></div><fieldset class="fieldsetclass"><legend class="legendclass">Product Post Launch Query</legend><div id="divfieldsetsearchwrapper"><title> </title><form name="form1" id="form1"><EditForm Enhance="true" Model="@searchQuery" OnValidSubmit="HandleSubmit" method="get" FormName="ProductPostLaunchQueryForm">> This is my EditForm Method.<div id="divsearchType"><fieldset id="fieldsetclassnoborder" style="height: 100px"><table border="0"><tbody><tr><td><span><input id="SearchExactDate" type="radio" name="SearchMode" value="SearchAdvanceDate" checked="checked" onclick="toggleDisplay('block')" /><label id="labelforsearchexactdate" for="SearchExactDate">Search By Specific Date Range</label></span><span><input id="SearchAdvanceDate" type="radio" name="SearchMode" value="SearchAdvance Date" onclick="toggleDisplay('none')" /><label for="SearchAdvanceDate">Search By</label></span></td></tr></tbody></table></fieldset></div><div class="dividersearch"></div><div id="searchform"><fieldset id="fieldsetclassnoborder" style="width: 230px; height: 100px; padding-left: 7px"> Date and Time From:<table><tbody><tr><td><label for="datetime">Date & Time</label><!--<input id="datetime" name="datetimeu" type="datetime-local" value="date and time" />--><InputDate id="datetime" @bind-Value="searchQuery.DateFrom" TValue="DateOnly" min-value="2020-01-01" /> @* <InputDate id="time" @bind-Value="products.Time" TValue="TimeOnly"></InputDate> *@</td><td> </td><td><label>HH</label><InputSelect id="hourfrom" @bind-Value="searchQuery.HourFrom"><option value="0">--</option> @foreach (var hour in Enum.GetValues(typeof(Hour))) { string strconc = @hour.ToString(); string mdfd = strconc.Replace('H', '');<option value="@hour"> @mdfd.ToString()</option> }</InputSelect></td><td> </td><td><label>MM</label><InputSelect id="minutefrom" @bind-Value="searchQuery.MinuteFrom"><option value="0">--</option> @foreach (var minute in Enum.GetValues(typeof(Minute))) { string strconc = @minute.ToString(); string mdfd = strconc.Replace('M', '');<option value="@minute"> @mdfd.ToString()</option> }</InputSelect></td></tr></tbody></table></fieldset></div><div id="divsearchtoParent" style="display: block"><div id="divsearchto"><div class="dividersearch px-2"></div><fieldset id="fieldsetclassnoborder" style="height: 100px; padding-left: 7px"> Date and Time To:<table><tbody><tr><td><label for="datetimeto">Date & Time</label><!--<input id="datetime" name="datetimeu" type="datetime-local" value="date and time" />--><InputDate id="datetimeto" @bind-Value="searchQuery.DateTo" TValue="DateOnly" min-value="2020-01-01"></InputDate></td><td><label>HH</label><InputSelect id="hourto" @bind-Value="searchQuery.HourTo"><option value="0">--</option> @foreach (var hour in Enum.GetValues(typeof(Hour))) { string strconc = @hour.ToString(); string mdfd = strconc.Replace('H', '');<option value="@hour"> @mdfd.ToString()</option> }</InputSelect></td><td> </td><td><label>MM</label><InputSelect id="minuteto" @bind-Value="searchQuery.MinuteTo"><option value="0">--</option> @foreach (var minute in Enum.GetValues(typeof(Minute))) { string strconc = @minute.ToString(); string mdfd = strconc.Replace('M', '');<option value="@minute"> @mdfd.ToString()</option> }</InputSelect></td></tr></tbody></table></fieldset></div></div><div class="dividersearch px-2" id="divider" style="display:block;"></div><div id="divsearchbtn" style="width:500px; height: 100px;"><fieldset class="fieldsetclassnoborder"><table border="0" style="margin-left:7px"><tbody><tr><td class="fieldsetclassnoborder" for="ddlCurrency" width="70" id="currencylbl">Currency</td><td class="fieldsetclassnoborder" id="vconlbl">VCON</td><td class="fieldsetclassnoborder"></td><td class="fieldsetclassnoborder" id="tcoidlbl">TCO ID</td><td class="fieldsetclassnoborder"></td></tr><tr><td width="70" valign="top" class="style3"><div id="currencybtn"><InputSelect name="ddlCurrency" @bind-Value="searchQuery.Currency" id="ddlCurrency" style="width: 70px;"><option value="0">Select Currency</option> @foreach (var currency in Enum.GetValues(typeof(Currency))) {<option value="@currency"> @currency.ToString()</option> }</InputSelect></div></td><td width="200" valign="top"><span style="margin-left:12px"> @* <input id="chkVCON" type="checkbox" name="chkVCON" /> *@<InputCheckbox id="chkVCON" @bind-Value="searchQuery.IsVCON"></InputCheckbox></span></td><td valign="top"><div id="prbtn"><right><input type="submit" name="btnsearchnow" class="btn btn-primary" id="btnsearchnow" value="Process" @onclick="ProcessButtonClick" /></right></div></td><td valign="top"><div id="tcofield"><input name="txttco" type="text" maxlength="8" id="txttco" style="width: 80px;" /></div></td><td valign="top"><div id="viewestorebtn"><input type="submit" id="btnadvanceviewestore" value="View in eStore" class="btn btn-secondary" style="width:160px;font-size:12px" /></div></td></tr><tr><td><InputSelect id="ddlCurrency0" style="width:70px" @bind-Value="searchQuery.CountryCode"><option value="0">Select WP</option> @foreach (var countrycode in Enum.GetValues(typeof(CountryCode))) {<option value="@countrycode"> @countrycode.ToString()</option> }</InputSelect></td><td colspan="2"><span id="lblCountryCode" style="display:none">Country Code:</span><input name="txtSpecificCountry" type="text" maxlength="3" id="txtSpecificCountry" style="display:none;" /></td><td><div id="emptyspace"></div></td><td><div id="rdmpbtn"><input type="submit" name="btnadvanceviewredemption" class="btn btn-secondary" value="View in Redemption" id="btnadvanceviewredemption" style="width:160px;font-size:12px" /></div></td></tr></tbody></table></fieldset></div><input type="hidden" nane="isVCONvalue" id="isVCONvalue" /></EditForm></form></div></fieldset><div id="divloadersheet" style="float: left; height: 30px;"></div><div id="divPostlaunchlist"><fieldset class="fieldsetclass"><legend class="legendclass">Product Post Launch List</legend><div id="divfieldsetlistwrapper"></div></fieldset></div><article class="content px-4"> @Body</article></main></div>I'm using Enum for InputSelect, I am using onion structure and both have IRepository, Repository, IService and Service in my folder. It just that I am really trying to figureout how can I manage to search by filling up this form. This project was tasked to localized the aspx asp.net to blazor. I really appreciate it if someone can tell me how to do that exactly, the videos on the internet are also outdated and can't be used in this scenario as they only retrieve data with all of the information in the database. But in my case, I want to filter the database based on the date.