正如您所见here,我允许用户动态创建数据表,并将表的ID存储在隐藏字段中(在示例中,它是文本区域,因此您可以看到它,最终的解决方案将是Guid而不是整数。)
我的问题很简单:我应该在服务器/ MVC操作上使用什么数据类型来获取textarea / hidden字段中保存的数据?
目前我有一个字符串,正在考虑加载.split()'和诸如此类的东西,但它感觉不对!
最终我需要某种IEnumerable<Guid, Guid>
的东西?!?!所以我可以做一个foreach并得到每对Ids。
我确信答案很简单,但我想不出该做什么。
任何帮助表示感谢。
答案 0 :(得分:1)
如果您的UI有多个名称相似的表单字段,它们将被提交到您的操作方法并正确绑定到数组。我们可以在这种情况下使用string[]
。
<form action="">
<input type="text" name="guids"/>
<input type="text" name="guids"/>
<input type="text" name="guids"/>
<input type="text" name="guids"/>
<input type="submit" value="Submit"/>
</form>
然后您的控制器可以像这样处理它们:
public ActionResult MyAction(string[] guids)
{
guids.Count == 4 // if all four fields were filled in.
}
请注意,如果表单只发送了一个guids
值,string[] guids
仍然可以使用 - 它只包含一个项目。
最后,请注意,如果未输入任何值,则数组值将为null,而不是空数组。
答案 1 :(得分:0)
您实际上可以绑定到模型中的列表,看一下这篇文章
http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx