Hi,
I am trying to bind a model to an select element in Blazor /.net 5. I already have one that reads a json file and that works fine but this one I am trying to get the data from a database. The problem comes when I try and get the DataTable into my Model. So I created a List<Model> and am trying to get it into my model. I am getting "cannot convert type list<model> to model" error. I have also tried a foreach item in list, add the item (note commented out section) but that is giving an NullReference error on the USStates.States even though I have a "new" on the model (StatesModel).
Can anyone tell me how to do this correctly? Help Appreciated..Thanks...
private StatesModel USStates { get; set; }
private Task GetStatesModel()
{
DataTable dt = new DataTable();
SQL.GetSQLData exe = new SQL.GetSQLData();
dt = (DataTable)exe.GetValues("storedProcName", "ConnStringName");
List<StateModel> StateList = Data.Conversion.ConvertDataTabletoModel.ConvertToList<StateModel>(dt);
USStates = StateList; --- Cannot Convert list<statemodel> to statemodel
//foreach (var item in StateList)
//{
// USStates.States.Add(item); -- Null Reference exception.
//}
return Task.CompletedTask;
}
and my Model......
public class StatesModel
{
public List<StateModel> States { get; set; } = new List<StateModel>();
}
public class StateModel
{
public string StateName { get; set; }
public string StateAbbreviation { get; set; }
}
---------------------------------------------------------------------------------------------------
FYI I also tried this USStates.States = StateList; - and I get a null reference exception at runtime on this line.