C#
C#

help

Root Question Message

mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
❔ how To create a view that can accept range of inputs, for models range for DbSet.AddRange method

This is my View Model where i am sending an Ienumarable of Model Option to get range of option for the question
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
this is my controller method to pass ViewModel
Angius
Angius12/24/2022
What do you mean? Just
@model ModelsVM

<h1>@Model.Question.Whatever</h1>

<ul>
  @foreach (var thing in Model.OptionsList)
  {
    <li>@thing.Whatever</li>
  }
</ul>
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
@model OnlineExam.Models.ViewModels.OptionsVM
@{
ViewData["Title"] = "Edit";
}

<h1>Question Edit</h1>
<form method="post">
<div class="container">
<div class="row">
<h4>Edit Question or Add Options</h4>
</div>
</div>
<div>
<label asp-for="question.question">Question</label>
<input asp-for="question.question" />
<span asp-validation-for="question.question"></span>
</div>
@foreach(var obj in Model.OptionsList)
{
<div>
<label asp-for="@obj.option"></label>
<input asp-for="@obj.option" disabled/>
</div>
}
@<div>
<label asp-for="OptionsList"></label>
<input asp-for="@obj.option" />
</div>
<div>
<label asp-for="@obj.option"></label>
<input asp-for="@obj.option" disabled />
</div>
@
<button type="submit" class="btn btn-primary">Update</button>
<a asp-controller="Question" asp-action="Index">Go Back</a>

</form>
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
this my view
Angius
Angius12/24/2022
Yeah
Angius
Angius12/24/2022
And what doesn't work about it?
Angius
Angius12/24/2022
Ah, wait, the issue is with how to create the form?
Angius
Angius12/24/2022
So that it sends multiple fields to the controller?
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
yes
Angius
Angius12/24/2022
Might need to name those fields manually
Angius
Angius12/24/2022
That is,
@for(var i = 0; i < @Model.Questions.Length; i++)
{
    <input type="text" name="Questions[@i]" id="Questions[@i]">
}

and you should be able to get it with
public async Task OnGet(List<string> Questions)
{

}
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
no no please come to coice chat
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
*voice
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
i will share my screen
Angius
Angius12/24/2022
I can't right now, sorry
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
ok wait
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
this my project repo
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
what i am trying to do is adding 4 input fields in view
Angius
Angius12/24/2022
Then add those 4 input fields
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
to take Input for Model Option's option(which Is a property)
Angius
Angius12/24/2022
Well, did you try the way I posted?
Angius
Angius12/24/2022
With naming them manually?
Angius
Angius12/24/2022
Ah, wait, I think I can see the issue...
Angius
Angius12/24/2022
Each answer has its own ID and stuff, so just sending a list of strings won't do
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
yes
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
thats why i added Option as Ienumarable<Option> in ViewModel
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
that option is connected to Question Model vie FK
Angius
Angius12/24/2022
Unless, perhaps,
@foreach(var q in Model.Questions)
{
    <input
        type="text"
        name="Questions[@q.Id]"
        id="Questions[@q.Id]"
        value="@q.Body">
}

public async Task OnPost(Dictionary<int, string> Questions)
{

}
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
Angius
Angius12/24/2022
Also, as a side note, line 59 of QuestionsController
  if(id == null&&id==0)

id cannot be both null and 0 at the same time
Angius
Angius12/24/2022
In any case, try the dictionary
Angius
Angius12/24/2022
If that fails, I'm out of ideas, sorry
mer_nam hai bulla rakhta hu kula
mer_nam hai bulla rakhta hu kula12/24/2022
sorry i shuld have put ||
ContactFrequently Asked QuestionsJoin The DiscordBugs & Feature RequestsTerms & Privacy