Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 动态窗体的模型或视图模型_C#_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

C# 动态窗体的模型或视图模型

C# 动态窗体的模型或视图模型,c#,asp.net-mvc,asp.net-mvc-4,C#,Asp.net Mvc,Asp.net Mvc 4,我的联系方式如下: Name: input Email : input Add More 如果用户想要添加其他姓名和电子邮件,她可以单击“添加更多”,她将看到另一组姓名和电子邮件输入框 在控制器端使用MVC如何处理这个问题 public ActionResult Process(IEnumerable<Contact> contacts){ .... ??? 公共行动结果流程(IEnumerable联系人){ .... ??? 或者,如果我需要一个模型绑定,我如何才能做到

我的联系方式如下:

Name: input    Email : input
Add More
如果用户想要添加其他姓名和电子邮件,她可以单击“添加更多”,她将看到另一组姓名和电子邮件输入框

在控制器端使用MVC如何处理这个问题

public ActionResult Process(IEnumerable<Contact> contacts){
.... ???
公共行动结果流程(IEnumerable联系人){
.... ???

或者,如果我需要一个模型绑定,我如何才能做到这一点,我的模型应该是什么?

这取决于许多因素,例如您如何创建字段。这是一个相当普遍的问题

我个人会通过构建一个json字符串并发送到服务器来实现这一点

另一种方法是以特定的方式在客户机上构建元素,以便模型绑定知道它是一个集合

我引述了谁帮我提出了一个类似的问题

保持模型绑定与新添加的动态 元素,则需要遵循元素的命名约定

诀窍是将html元素的id属性值保持在 format.CollectionName\u ItemIndex\u属性名称

并以这种格式命名属性值

CollectionName[ItemIndex].PropertyName


我想我需要一些

IList<Contact> Contacts; as a ViewModel. 
IList联系人;作为ViewModel。

提交表单后,一些操作会处理这个问题方法添加下一个联系人行,不进行完整的webiste刷新。

您建议的解决方案有什么问题?IEnumerable和contact是一个具有属性名称和电子邮件的类。这也会处理模型绑定。@Alex取决于客户端控件的创建方式。我们需要更多信息info@DaveHogan我以为他在用剃刀d相应地为其动态控件编制索引([0]。名称[0]。电子邮件[1]。名称[1]。电子邮件等)