我使用VS for Mac,.NET Core 2.0,MVC。
我正在尝试制作一个表单,该表单接受同名文本的多个输入参数。 我的观点包含以下内容:
<div>
<input asp-for="Email" class="form-control" type="email"/>
<input asp-for="Email" class="form-control" type="email"/>
<input asp-for="Email" class="form-control" type="email"/>
<input asp-for="Email" class="form-control" type="email"/>
<div>
这给了我错误,我已经阅读了有关命名输入Email []的内容,但我无法使其正常工作。
如何整理视图,以后如何在控制器中收到电子邮件地址?
提前致谢!
答案 0 :(得分:0)
Email[]
是一个类(假设从你的符号 - 如果你在谈论动作声明),输入很可能只是一个字符串。
因此,请将操作参数更改为string[] Email
。
ASP.NET Core模型绑定器会将多个同名的参数视为数组,因此Email
或Email[]
应在视图中起作用。
HTML没有&#34;数组&#34;的概念,从HTML的角度来看Email[]
只是一个普通的名称Email
。它只取决于后端技术如何解释这种命名约定。
即。 PHP会将多个Email
值(即Email=abc@xyz&Email=def@ghx
)视为一个单独的值(使用第一个或最后一个参数),而ASP.NET&amp; ASP.NET Core将其解释为数组。