看板 C_Sharp 關於我們 聯絡資訊
最近遇到了一個問題,在NAT裡有一台Mysql sever, 外部的程式要能撈到這台Mysql sever上的資料。 因為Mysql上的ip為private ip,所以可想而知外部程式無法直接連到Mysql上。 因為對Mysql不是那麼的熟悉, 所以不太知道能不能直接從Mysql上進行設定, (因為一些關係,所以不能直接在NAT上進行mappig設定) 讓外部程式連進去。(若有高手知道也可以幫幫我 QQ) 於是乎便想說在安裝有Mysql的這台電腦上, 寫一支socket client的程式,而NAT外的程式則為socket server, 然後client先向server註冊連線後, server 便可透過client下達sql指令,client再將結果透過socket 回傳。 問題來了,client 進行 query之後結果,是存放在 MySqlDataReader 資料型態中, 但socket要送出的話則要將 資料轉成Byte型態,兩者沒辦法直接轉換。 雖然可以一一將MySqlDataReader 的資料,一欄一欄讀出來, 然後判斷型態(可能有 String,int,float,DateTime等等), 再轉成String,再轉成Byte,但感覺好像不是很聰明的作法。 不知道有沒有比較好的方法呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 115.43.220.48 ※ 編輯: freewhat 來自: 115.43.220.48 (02/07 16:01) ※ 編輯: freewhat 來自: 115.43.220.48 (02/07 16:07) ※ 編輯: freewhat 來自: 115.43.220.48 (02/07 16:08)
chancewen:為啥不寫成web service? 02/07 17:16
horngsh:先Serialize再傳, 收到後再deSerialize如何? 02/08 12:52