作者prjryu (再努力一點)
看板C_Sharp
標題[問題] ASP.net C# 網頁chart用javascript疑問
時間Sun Dec 2 15:29:51 2018
各位前輩大家好,
為了工作所需,在下最近踏入了ASP.net MVC架構的世界,
而上次碰網頁已是10年前簡單HTML、PHP應用的學生年代...
目前遇到了與javascript溝通的困境,望版上善心人士指點迷津 m(_ _)m
ASP.net MVC的架構是我第一次接觸,也買了書籍最初階的學習,
我撰寫的網頁已可以使用controller(C#)與view(cshtml)控制網頁資料的顯示或運算;
工作任務中又有一需求是需要將DB撈出的資料以chart顯示(直方/圓餅/散佈圖...)
找尋網路上眾多的chart套件,發現幾乎所有都是使用javascript去實作,
我也找到了相關的範例,確定引入我的專案同樣可以長出套件的圖。
現在需要的動作是:
1. user在網頁(cshtml)上設定搜尋條件送出
2. 後端(controller)利用網頁上傳回的條件select DB資料並回傳給網頁的javascript
3. ueer在網頁上可看到所設範圍資料長出的chart圖
(有想過直接從javascript去連DB,但網路上查了大家都不建議者麼做,
有安全性的問題,DB連線的這一段不考慮做在javascript端,而是C#撈完再傳出去)
而我遇到最大的問題是,我不知道該如何將C#讀出的DB資料,
轉為JASON傳給Chart圖的.js檔變數中作為chart圖的input,
想請教有經驗的前輩們如何實作,或 是否有相關的教學/sample code能提供,
在下感激不盡。
--
◣ ◢ HEY~~~HEY~~~CHAAAAARLIE~!
。。。。。
◢ ▁ ◣
⊙ ⊙
⊙ .◣
▼▼▼▼
ㄟ
◥ ㄧ◤
\▲▲▲▲
φ ◢ . \ . δ
./ㄨ \\/ˊ◥▄▄◤
\|/ㄑ ( ︶ ˋ\///\/. by Armour@joke
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.155.223
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_Sharp/M.1543735837.A.CDF.html
1F:→ tomnelson: JASON(X) JSON(O) 12/02 18:01
2F:→ tomnelson: 不過如果你是要轉給你同事JASON的話,當我沒說... :) 12/02 18:02
3F:→ prjryu: 是JSON沒錯 Tom大大幽默了一把。 12/02 18:37
4F:推 lonniekao: 最簡單的方法是controller加上[post]回傳jsonresult 12/02 22:03
5F:→ prjryu: 要如何從view的cshtml 呼叫controller 的function? 12/02 23:34
6F:→ Litfal: javascript 12/02 23:40
7F:→ prjryu: js不能直接傳運算結果的話我只整走@ViewData或@ViewBag了 12/02 23:45
8F:→ prjryu: 我在cshtml裡用js的"<%=functionxxx()%>";會真的被當字串 12/02 23:47
9F:→ prjryu: 完全不會回call我controller裡面的function 12/02 23:48
10F:→ prjryu: 也試了PageMethods,一直會說PageMethods is not defined 12/02 23:50
11F:→ prjryu: 也試了$.ajax({type: "POST", url: "/HomeController/xxx 12/02 23:51
12F:→ prjryu: 回找不到網頁.... 12/02 23:52
13F:推 pennymarkfox: 找不到網頁是因為你url組錯了 12/03 11:29
14F:→ pennymarkfox: 用page methods然後jquery去拿這方向是對的 12/03 11:29
15F:→ Litfal: 先學會用第三方工具去call web api吧,還有js的url可以用 12/04 00:24
16F:→ Litfal: UrlHelper去建 12/04 00:24
17F:→ johnny4753: 感覺你只是mvc的model binding機制不熟,先把.net mvc 01/01 16:19
18F:→ johnny4753: 前後端傳遞資料的方式搞懂吧,剩下只是call js chart 01/01 16:19
19F:→ johnny4753: 相關 library去呈現後端回應給前端的資料而已 01/01 16:19