C# 试图创建一个足够动态的模型来处理动态问题
我正在尝试为一组问题创建一个动态模型,这些问题被动态地拉入我的应用程序中 我想将输入类型设置为问题id(唯一)。然后,我想将这些答案与模型中的值字段相关联 我有这个模型:C# 试图创建一个足够动态的模型来处理动态问题,c#,asp.net-mvc,razor,dynamic,C#,Asp.net Mvc,Razor,Dynamic,我正在尝试为一组问题创建一个动态模型,这些问题被动态地拉入我的应用程序中 我想将输入类型设置为问题id(唯一)。然后,我想将这些答案与模型中的值字段相关联 我有这个模型: public class QuestionViewModel { public int? Id { get; set; } public string QuestionType { get; set; } public string Text { get; set;
public class QuestionViewModel
{
public int? Id { get; set; }
public string QuestionType { get; set; }
public string Text { get; set; }
public List<QuestionOptionViewModel> Options { get; set; }
}
public class QuestionOptionViewModel
{
public int? Id { get; set; }
public string Text { get; set; }
public string StringValue { get; set; }
public bool OptionValue {get; set;}
}
因此,我在模型中添加了StringValue部分。我想捕捉那里的响应,这样我就可以动态地跟踪这个问题输入框的名称为QuestionOption int.,并将该值存储在StringValue中(因为本例中的文本)
我不知道在C#MVC中如何做才合适?如何正确处理拉入网页的动态创建的问题。我可以用我的模型轻松地把它们拉出来。但我不确定将它们存储回模型中的正确方法
根据要求,这里是一个单一问题的屏幕抓取 你的问题是什么?你能展示一个问题的屏幕抓图吗?你能看到一个问题的屏幕抓图吗?你可以看到这个问题的屏幕抓图有两个问题选项(名字和姓氏)。文本框字段是完全动态的,这就是为什么我想使用ID作为输入名称。您的问题可能会被关闭,因为不清楚您的问题是什么。据我所知,你只是想知道如何保存对问题的回答?如果是这样的话,您将需要一个新的实体,比如
QuestionOptionResponse
,带有QuestionOption
的外键,基本上就是发布的值。不要将外键存储到实际的问题
,因为您可以从问题选项
关系中获得该外键。
@for (int i = 0; i < @Model.Options.Count; i++)
{
<div class="col-lg-4">
<label for="@Model.Options[i].Text">@Model.Options[i].Text</label>
@Html.TextBoxFor(o => Model.Options[i].StringValue, new { name = Model.Options[i].Id, @class = "form-control", placeholder = "" })
</div>
}
QuestionViewModel
int = 1
questionType = Text
Text = What is your name?
QuestionOptionViewModel
int = 1
Text = FirstName
StringValue = *I want to set the response here*
OptionValue = *If it was a radio I want to store bool here*
int = 2
Text = LastName
StringValue = *I want to set the response here*
OptionValue = *If it was a radio I want to store bool here*