作者tablepinpon (tabletennis)
標題Re: [請益] 如何撰寫 VB.NET 程式?
時間Sun Jul 30 20:55:09 2017
※ 引述《beaprayguy (小羊快跑啊)》之銘言:
: 這就是義大利麵code會發生的問題。
: 前端包含後端code,結果不清楚問題是在前端還是後端。
: 我建議你應該把事情分解成
: 1. 先確認全部的 Javascript是在windows onload以後在加載。
: 比較正規寫法會把script段放到page最下面。
: 2. 我建議把每個ascx的JavaScript拆出來。
: 傳入控制項的client id做事件綁定
: 3. ascx只是一個user controls ,我猜測裡面一定是前人很多寫script function
: 建議通通改成按鍵綁定事件,呼叫頁面上統一script段的function
: 可以解決90%問題。
: 4.解不出來外包給我幫你解。賺個零用錢
1. 是先用 VB 撈資料庫資料寫入 頁面 的 text,
之後再用後端 呼叫 前端 JS 的方式
讓 頁面 原本是隱藏 變成 顯示
2. 每個 ascx 都是用 後端 呼叫 前端 JS 的方式
譬如要把 JS 的 test(); 在 user 頁面執行
3. 是用按鍵綁定事件方式沒錯啊...
問題應該是 用 VB 撈資料庫資料寫入 頁面 的 text,
譬如原本都是 A 跟 B 在一起,突然 C 也想要參一腳...
4. 價碼大概多少啊?因為我目前一個 ISSUE 都沒解過,
也沒人帶~~~
想說有人會 CASE BY CASE,把手把教...
帶我個兩三個以後,我應該就可以上手了!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.130.158
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1501419312.A.BBD.html
1F:→ beaprayguy: 所以就驗證了後端叫前端這件事情是什麼時候發作 07/30 21:11
2F:→ beaprayguy: 你在追下去吧 07/30 21:11
3F:→ beaprayguy: 另外不要用後端驅動前端 07/30 21:13
4F:→ beaprayguy: 改成統一用前端控制 07/30 21:14
5F:→ beaprayguy: 後端把要判斷的值放入到前端愛 07/30 21:14
6F:→ beaprayguy: 在做控制 07/30 21:14
7F:→ tablepinpon: 不是要統一?好像整包程式寫法都是這樣子! 07/30 21:19
8F:→ tablepinpon: JS 先載入在 user 頁面裡面,之後後端再呼叫 JS 來用 07/30 21:20
9F:→ tablepinpon: 好像也有後端寫 JS CODE 傳到前端執行的~~~ 07/30 21:21
10F:→ beaprayguy: 所以你連畫面的生命週期都很混亂沒搞清楚,我沒看到co 07/30 21:28
11F:→ beaprayguy: de你是叫人占卜嗎xdd你要發包請站內信問,對我來講你 07/30 21:28
12F:→ beaprayguy: 這問題可能一下就解了。我遇過一個畫面十幾個ascx 07/30 21:28
13F:推 prag222: 完全看不懂你們在講什麼 VB.NET ASCX那就是webform阿 07/30 21:29
14F:噓 accessdenied: 看到把所有判斷搬到前端來做這種建議我真是嚇傻了! 07/30 23:59
15F:→ accessdenied: 這就是台灣工程師網站做的這麼容易被駭的原因嗎? 07/30 23:59
16F:噓 accessdenied: 專業的學到就是永遠不要相信前端的任何驗證和判斷, 07/31 00:01
17F:→ accessdenied: 尤其價錢數量總金額,人家一個F12就讓你的訂單成立 07/31 00:01
18F:→ accessdenied: 訂票訂爆搞死你。 07/31 00:01
19F:→ accessdenied: 今天我算是見識到B大大的專業了。 07/31 00:02
20F:→ beaprayguy: 這是兩回事 07/31 00:04
21F:→ beaprayguy: 他是控制顯示又不是控制訂單 07/31 00:05
22F:→ beaprayguy: 你要不要看他的case 07/31 00:05
23F:→ beaprayguy: 你有病嗎? 07/31 00:05
24F:→ beaprayguy: 何況什麼問題用什麼解法,訂單問題誰說不能放在local 07/31 00:07
25F:→ beaprayguy: 端做?只要後端也驗證金額和數量相符 07/31 00:07
26F:→ beaprayguy: 驗證機制有什麼問題? 07/31 00:07
27F:→ beaprayguy: 你要雞蛋裡面挑骨頭,也要看看人家要解什麼問題 07/31 00:08
28F:→ beaprayguy: 何況同一份viewstate若被人踹改,在和當初狀態做檢查 07/31 00:13
29F:→ beaprayguy: ,並處理邊界問題 07/31 00:13
30F:→ beaprayguy: 請問無法判斷嗎? 07/31 00:13
31F:→ beaprayguy: 還是你寫程式只有前端驗證後端不驗證 07/31 00:15
32F:→ beaprayguy: 什麼叫不要相信後端值,而是要做到雙邊都要驗證。這才 07/31 00:16
33F:→ beaprayguy: 是最佳實務 07/31 00:16
34F:→ beaprayguy: 你的狀況發生是因為工程師偷懶只做一半 07/31 00:17
35F:→ beaprayguy: 你不然現在主流離線web要怎麼做? 07/31 00:19
36F:推 beaprayguy: 一堆狀態放前端,難道不會被踹改嗎? 07/31 00:30
37F:推 accessdenied: 如果B大原意是說前後端都要驗證,我是認同的。前端 07/31 00:44
38F:→ accessdenied: 驗證是為了節省後端運送資源,但後端驗證不可免。 07/31 00:44
39F:→ accessdenied: 我會以為B大只依賴前端,是因為那句《統一由前端控 07/31 00:44
40F:→ accessdenied: 制》,若是我誤會就抱歉啦 07/31 00:44
41F:推 accessdenied: 前端驗證是為了節省後端「運算」資源,錯字更正 07/31 00:48
42F:推 TWLAB: 我幫國立碩班同事用vb寫過作業 也幫過電控同學求救plc連結 07/31 21:44
43F:→ TWLAB: 資料庫顯示數據圖表 07/31 21:44