c# - 是否可以通过管道传输分隔格式编码值而不是逗号?

标签 c# asp.net .net

目前,我有一组动态创建的文本框 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" />

会是:

Val,ue1,Value2

建议我有 3 个文本字段而不是两个。如此简单 Replace(',','|')没有帮助。

最佳答案

实际上,POST 分别发送两个输入的值。您看到的是串联版本,因为您是如何从 Request.Form(这是一个 NameValueCollection)访问它的。

为了能够区分不同的 POSTed 值,您可以使用 GetValues()

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

关于c# - 是否可以通过管道传输分隔格式编码值而不是逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15012516/

相关文章:

jquery - Bootstrap navbar-collapse 无法在 col-md 处正确折叠

javascript - 为什么在运行带有部分回发的 ASP.Net 页面时,VS2010 调试器中的脚本 block 会无限增长?

C# - 我可以将一个函数的调用映射到实际调用另一个函数吗

c# - 在 C# 中,有没有办法打开第二个表单并选择一个选项卡?

c# - TcpListener: "All Unassigned IP"地址类似功能

c# - DateTime.ToString 从所有格式到 dd/MM/YYYY?

c# - 从列表框中删除所有项目

c# - ASP 的 Request.IsLocal 在 Azure 中始终为 true

c# - 使用 Linq 在 Epplus 工作表中选择分组的最大值和最小值

c# - 检索物理核心处理器的数量