目前,我有一组用相同的name属性动态创建的文本框:

<input type="text" name="SameName" value="Value1" />
<input type="text" name="SameName" value="Value2" />

在服务器端,我收到一个提交的表单(post)并访问Request.Form["SameName"],值为Value1,Value2
我的问题是,是否可以通过某种方式将分隔符从逗号更改为管道(或其他字符)?
我不能用管道替换逗号,因为我需要分隔不同的字段:
<input type="text" name="SameName" value="Val,ue1" />
<input type="text" name="SameName" value="Value2" />

将是:
值,ue1,值2
建议我有3个文本字段而不是2个。所以一个简单的Replace(',','|')是没有帮助的。

最佳答案

实际上,post分别发送两个输入的值。您看到的是连接的版本,因为您是如何从request.form(这是一个nameValueCollection)访问它的。
要区分不同的发布值,可以使用GetValues()

string[] values = Request.Form.GetValues("SameName");

10-01 23:38