Fw: [问题] asp.net Request

楼主: BigLoser (大鲁蛇)   2014-03-22 19:07:15
※ [本文转录自 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
作者: leicheong (睡魔)   2014-03-22 19:57:00
2的方式一定不会throw error, 但会读不到在container中的扛control的值(因为被改名了).
楼主: BigLoser (大鲁蛇)   2014-03-22 20:32:00
1F你好 不太懂妳的解释呢
作者: f1234518456 (...........)   2014-03-22 22:46:00
可以去看看你拉的物件在html中的name名字
作者: m339606 (mize)   2014-03-22 23:12:00
Request的意思知道了吗?如果写得好的话两者没有差异只是通常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等相关属性中

Links booklink

Contact Us: admin [ a t ] ucptt.com