作者BigLoser (大鲁蛇)
看板C_Sharp
标题Fw: [问题] asp.net Request
时间Sat Mar 22 19:07:15 2014
※ [本文转录自 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
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 36.234.149.230
1F:推 leicheong:2的方式一定不会throw error, 但会读不到在container中 03/22 19:57
2F:→ leicheong:的扛control的值(因为被改名了). 03/22 19:58
3F:→ BigLoser:1F你好 不太懂你的解释呢 03/22 20:32
4F:推 f1234518456:可以去看看你拉的物件在html中的name名字 03/22 22:46
5F:→ m339606:Request的意思知道了吗? 03/22 23:12
6F:→ m339606:如果写得好的话两者没有差异 03/22 23:15
7F:→ m339606:只是通常Request不需要用在Server Control上,因为没必要 03/22 23:17
因为我要解决一些问题,所以才会想用这个方法,
不过今天GOOGLE到了一个解法,但还没试不确定适不适用,
还是先谢谢大家的回答,另外请问m339606板友,什麽叫做写的好= =?
8F:→ m339606:如同f版友说的,你去看实际网页的原始码的id 03/22 23:50
9F:→ m339606:ServerControl输出的时候id会被改掉 03/22 23:53
10F:→ m339606:你在做的时候id是TextBox但是在客户端看可就不一定了 03/22 23:54
11F:→ m339606:Request是从客户端Post回来的网页中去找出符合的id控制项 03/22 23:55
12F:→ m339606:一弄不好就会发生id冲突 03/23 00:05
13F:→ fumizuki:控制项在样板或主版页面中,用户端的id和name都会加上 03/23 23:23
14F:→ fumizuki:上层容器的id,并且id会以底线分隔,name会以$符号分隔 03/23 23:23
15F:→ fumizuki:而Request["名称"]用的是$符号分隔的name 03/23 23:24
16F:→ fumizuki:Control.ClientID可以取得用户端的id 03/23 23:25
17F:→ fumizuki:Control.UniqueID可以取得用户端的name 03/23 23:25
18F:→ fumizuki:除非有必要取得用户端post的内容,否则使用TextBox.Text 03/23 23:26
19F:→ fumizuki:就可以了 03/23 23:26
20F:→ fumizuki:因为.net背後已经帮你把post的内容放到Text等相关属性中 03/23 23:27
谢谢大家的回答,关於fumizuki板友说的这件事情我是知道的,
我本来想问的缺点,是会不会有什麽效率上的差别之类的,
非不得已我也不想写第二种,不过这个假日似乎找到了解决方法了,
虽然有初步测试了,不过还是要等有空在加入到专案中测试过才知道结果如何,
非常谢谢大家
※ 编辑: BigLoser 来自: 113.61.164.195 (03/23 23:37)