J'ai recherché des questions similaires ici mais je n'ai toujours pas trouvé de solution à mon problème.Passage de données à partir du formulaire avec un nombre variable d'entrées - MVC 5
J'ai une page qui contient un texte et une forme et ils partagent le même ViewModel comme suit:
public class MyViewModel
{
public IEnumerable<WordingB> WordingBs { get; set; }
public IEnumerable<WordingC> WordingCs { get; set; }
public IEnumerable<Question> Questions { get; set; }
}
est ici un peu plus de détails sur WordingB, WordingC et Question:
public class WordingB
{
public string EOW { get; set; }
}
public class WordingC
{
public string EOW { get; set; }
}
public class Question
{
public string QuestionText { get; set; }
public string Answer {get; set;}
}
Et voici la page en question:
@model MyProject.ViewModels.MyViewModel
<div class="col-md-6 masonry listview-block">
@foreach (var wording in Model.WordingBs)
{
<div class="block">
<p>@Html.Raw(@wording.EOW)</p>
</div>
}
@foreach (var wording in Model.WordingCs)
{
<div class="block">
<p>@Html.Raw(@wording.EOW)</p>
</div>
}
</div>
@using (Ajax.BeginForm("Routing", "Partials", new AjaxOptions { UpdateTargetId = "Target", LoadingElementId = "spinner", HttpMethod = "POST", InsertionMode = InsertionMode.Replace }))
{
<div id="quick-post" class="block-body form-validation">
@foreach (var question in Model.Questions)
{
<div class="form-group">
<label for="QuestionText">@question.QuestionText</label>
<input type="text" class="form-control input-sm input-sm" name="Answer">
</div>
}
<div class="form-group">
<label for="postcode">PostCode</label>
<input type="text" class="form-control input-sm validate[required] input-sm" name="postcode" [email protected]["postcode"]>
</div>
<div class="form-group">
<label>Loss Description</label>
<textarea></textarea>
</div>
<input type="submit" class="btn btn-primary btn-xs" value="Route">
</div>
</div>
</div>
}
l'idée est qu'une personne Admin est un ble d'ajouter des questions au formulaire. (Les questions sont stockées dans une table) Il y a un contrôleur qui utilise MyViewModel et retourne le modèle dont j'ai besoin pour la vue. Le problème auquel je fais face maintenant est de transmettre les données de mon formulaire à un contrôleur. Le formulaire peut avoir zéro à 30 ou 40 questions en ce qui me concerne! J'ai l'impression d'avoir atteint la limite de mes connaissances et j'ai sérieusement besoin de conseils.
duplication possible de [formulaire ASP.NET MVC traitant nombre inconnu d'entrées] (http://stackoverflow.com/questions/4389214/asp-net-mvc-form-handling-unknown-number-of-inputs) –
Quel est exactement votre question? Quel est le problème que vous essayez de résoudre? –
Salut désolé de ne pas être très clair. Ce que je voudrais accomplir est de prendre tout dans ma forme (étiquettes et textareas) et les réafficher dans une autre page. Je ne peux pas le faire du côté du navigateur car les données doivent être vérifiées par rapport à ma base de données. Comme vous pouvez le voir, j'ai un nombre variable de questions (par conséquent aussi des réponses). – Ouanixi