※ [本文转录自 Web_Design 看板 #1JBMwp0f ]
作者: BigLoser (大鲁蛇) 看板: Web_Design
标题: [问题] asp.net Request
时间: Sat Mar 22 19:06:25 2014
请教一下各位前辈,
我在写asp.net的后端中,
以下两种写法有什么差异吗?
(1) string text = TextBox.Text;
(2) string text = Request["TextBox"];
在后端写过多的 Request 会有什么缺点吗?
谢谢 <3
2的方式一定不会throw error, 但会读不到在container中的扛control的值(因为被改名了).
作者:
m339606 (mize)
2014-03-22 23:12:00Request的意思知道了吗?如果写得好的话两者没有差异只是通常Request不需要用在Server Control上,因为没必要如同f版友说的,你去看实际网页的原始码的idServerControl输出的时候id会被改掉你在做的时候id是TextBox但是在客户端看可就不一定了Request是从客户端Post回来的网页中去找出符合的id控件一弄不好就会发生id冲突
作者:
fumizuki (蒙面加菲狮)
2014-03-23 23:23:00控件在样板或主版页面中,用户端的id和name都会加上上层容器的id,并且id会以底线分隔,name会以$符号分隔而Request["名称"]用的是$符号分隔的nameControl.ClientID可以取得用户端的idControl.UniqueID可以取得用户端的name除非有必要取得用户端post的内容,否则使用TextBox.Text就可以了因为.net背后已经帮你把post的内容放到Text等相关属性中