Csharp WebRequest實作POST來取得網頁內容(及檔案下載)

CSharp要取得網頁內容可以利用內建的WebBrowser來取用IE Container進行連線與資料的取得,WebBrowser實作了很多內容,像是Javascript、HTML parse等等,功能十分強大。

這個範例不使用WebBrowser,而是使用HttpWebRequest來取得遠端的html內容。

Web Server說穿了也就是一個Socket Server,只是Browser在與其溝通時使用了規定的規則而已,以下範例會模擬此規則傳送header來告知Web Server,假裝自己是Browser,而此也會利用cookieContainer來記錄傳輸過程的Session情況,如此登入後的Session就可以在往後的需求連線中被使用。

程式說明:

Server端

Read More

Log4net Visual Studio版的log4j

在撰寫Java程式時很習慣的使用log4j來當程式訊息的輸出記錄,只需要簡單的改變設定檔就可以改變訊息是要顯示於Console、存入資料庫或是存於檔案裡,而且可選擇對於不同層級的記錄,十分方便於開發的Debug。

log4j也有.net版本,就叫log4net,也是由Apache基金會開發維護,在使用上與log4j還蠻相似的,log4j在使用時只需把config檔放置於classes跟目錄就可以了,而log4net則需要手動載入此設定檔,安裝設定的方法如下。

Read More

Visual Studio Express .NET C#(C Shape)連接MySQL資料庫

Microsoft Visual Studio Exrpess是微軟提供的免費而且比較簡單的.NET開發工具,跟一套數萬元的Visual Studio有著許多限制,像是在連接資料庫時就提供了比較少連接選擇方式,雖然可以用ODBC的方式來解決部份的問題,不過效能上還是直接使用Connector比較好。

MySQL提供了一個免費的Connector,可藉由此Connector來直接連接資料庫,只需要加入參考的DLL,再使用連線字串建立連線就可以使用了,不過並無法直接使用Express提供的加入新資料來源(資料庫)精靈來操作。

底下提供一個簡單的範例,利用SQLCommand來進行查詢,回傳結果。

1.安裝My SQL Connector

可由MySQL官方網站下載,請選擇Windows (x86, 32-bit), MSI Installer或是mysql-connector-net-6.3.6.zip其中一個,mysql-connector-net-6.3.6-src.zip是需要自行Complier的原始碼內容。

2.加入參考

可直接於.NET分頁選擇MySQL.Data或是利用瀏覽來加入DLL,二者選一

Read More