1

想象一下,您正在创建一个在线测试应用程序。它允许您添加多项选择测试题。因此,用户单击“添加新测试问题”并出现一个对话框。该对话框要求提供问题文本、可能答案列表和正确答案。所以结果是这样的:

    Which color has the letter "G" in it?
            A.  Blue
            B.  Red
    ---->   C.  Green
            D.  Yellow
            E.  Purple

每个新问题可能有不同数量的选项。所以下一个问题可能是:

    Does NYC have 5 boroughs?
    --->    A.  Yes
            B.  No

我创建了一个对话框,允许用户在表单中动态构建这些问题(添加答案、指定正确的答案等)。无论如何创建一个模型和一个 Web API 可以在表单提交时无缝地参数绑定该结构?我在想一些疯狂的事情,比如我的表单中有一个表格,我可以以某种方式将它绑定到我的模型中的一个数组?可能不会那样工作,但正在寻找一个创造性的想法。

4

1 回答 1

0

模型可能看起来像这样

public class Question {
    public string Text { get; set;}
    public IList<Answer> Answers { get; set;}
}

public class Answer {
    public string Label { get; set;}
    public string Text { get; set;}
    public bool IsCorrect { get; set;}
}

一个 api 端点会收集这些来形成一个测试。

public class Test {
    public IList<Question> Questions { get; set; }
}

public class TestController : ApiController {
    [HttpPost]
    public IHttpActionResult Create(Test test) { ... }
}
于 2016-10-20T19:20:15.437 回答