c# - 确定 Request.Form 中的控件类型

标签 c# asp.net asp.net-mvc-2

如何确定 Request.Form 中的控件类型?

 foreach (string x in Request.Form.Keys)
 {                                
    if (Request.Form[x] == null || Request.Form[x].ToString() == "")
    {....

我想知道每个循环的控制类型是什么。

它是文本框、列表框、隐藏字段等...

如何做到这一点?

最佳答案

有时候,手动处理 Request 集合比处理强类型控制对象更有用。但是,几乎在任何情况下,遍历所有控件都可能不是一个好主意。

您可以执行 recursive FindControl() 使用 Request 集合中的键。如果 FindControl 没有返回 null,请检查控件的类型。

请注意,提交的 key 与控件的实际 ID 不同。它通常看起来像:

<input type="text" name="foo$bar$txtFirstName" id="foo_bar_txtFirstName" />

“name”是请求集合中的实际键,而“id”是控件的 ID。这需要进一步的映射步骤。

关于c# - 确定 Request.Form 中的控件类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10305824/

相关文章:

c# - 登录安全 : How to Disable Multiple login

c# - 关于声明泛型嵌套类的编译错误

c# - asp.net core 5.0 模拟框架

asp.net - 如何在ASP.NET全局化中配置不变文化?

asp.net - 如何结合 ASP MVC 5 和 Emberjs

asp.net-mvc-2 - 如何在 ASP.NET MVC 中实现动态 Controller 和 Action 方法?

mysql - 什么版本的 MySQL Connector 可以与 Mono 2.10.1 一起使用

c# - 如何使用 Moles 作为构造函数?

c# while 中的两个语句

jquery - 将数据数组从 Json 传递给 wcf 函数作为参数