作者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)