.NET 4.0 New Feature - System.Device.Location
.NET 4.0 BCL中新增了System.Device.Location命名空間,該命名空間內提供許多類別允許應用程式開發人員在Windows 7以後的作業系統使用單一 API 輕鬆存取裝置位置,開發人員不需去考量電腦中可以使用的位置提供者,也不需要為多個位置提供者排定彼此的優先權與中間的轉換,透過這個命名空間開發人員可以更專注於位置取得程式的撰寫,而不需花費心思考量各式各樣的位置提供者。 ...
.NET 4.0 BCL中新增了System.Device.Location命名空間,該命名空間內提供許多類別允許應用程式開發人員在Windows 7以後的作業系統使用單一 API 輕鬆存取裝置位置,開發人員不需去考量電腦中可以使用的位置提供者,也不需要為多個位置提供者排定彼此的優先權與中間的轉換,透過這個命名空間開發人員可以更專注於位置取得程式的撰寫,而不需花費心思考量各式各樣的位置提供者。 ...
身為程式開發人員不能避免的時常會需要因應客戶的需求下去為元件做些客制或擴充,有些應用程式為了讓程式便於處理這部分的需求會為應用程式加上擴充的機制,這樣的擴充機制能讓應用程式很輕鬆的達到大部分的擴充需求,也能將此機制開出讓有此需求的用戶能自行依自己處理擴充的動作。實作應用程式擴充元件機制在.NET有許多的作法,這邊將介紹如何透過反射(Reflection)技術來實作這樣的機制。 ...
SortedSet是.NET 4.0新加入的類別,位於System.Collections.Generic命名空間內,能夠依排序順序維護不重覆的物件集合。為一自我平衡紅黑樹的實作,可隨著項目的插入和刪除維護排序的順序,無法從特定位置訪問特定元素,使用上與現有的HashSet類別有點類似,一樣提供許多數學集合 (Set) 運算,像是交集、聯集、與差集等,但多了自動排序的功能,此外還具備有Min、Max的取得,與取裡面子集的功能。 ...
在例外處理時,有些情況下我們會需要將例外攔截後再次向外擴,在此時我們有兩種可選擇的寫法,一種是很多初學者會採用的透過throw ex來外擴例外,這種寫法須避免使用,因為採用此種寫法會改變的原來的呼叫堆疊,造成除錯上的困難。 try { // do something } catch (Exception ex) { // do something throw ex; } ...
DotNetZip為一輕便又易於使用的開放源碼壓縮函式庫,開發人員可透過DotNetZip函式庫來做壓縮資料、讀取壓縮資料、更新壓縮資料、與列出壓縮檔資料內容等功能,能支援壓縮檔密碼保護、Zip64格式、產生自解壓縮檔、與Unicode編碼。 ...
MaxToCode為一.NET程式碼核級保護軟體,能為程式加上混淆或加密,保護程式碼不被有心人事惡意破解。取得授權後會拿到一個硬體鎖與金鑰,透過金鑰可到指定位置下載正式版本的MaxToCode,安裝完即可開始使用MaxToCode,需特別注意在使用上要先插入MaxToCode硬體鎖,再將MaxToCode正式版本軟體開啟,MaxToCode軟體才會變為正式版本。 ...
IObservable & IObserver為一種推入型通知的通用機制,為觀察者模式的實現,在.NET 4.0開始加入到BCL中 ,跟以往IEnumerable與IEnumerator這種拉出型通知的通用機制有所不同。 ...
.NET 4.0在Environment類別新增Is64BitOperatingSystem與Is64BitProcess屬性,其功用分別為判斷當前作業系統是否為64位元版本,與判斷當前處理序是否為64位元。 ...
Matt Perdeck開發的LINQ to CSV library提供強大的CSV檔存取功能,可讓我們很輕鬆的取出CSV檔內容,搭配使用Linq去做查詢的動作,也具備有CSV檔文件產出與例外處理的功能,使用上十分的彈性好用。 ...
翻閱程式發現以前在處理合併儲存格時,為該功能撰寫了最大公因數與最小公倍數的處理,這邊稍微整理記錄一下。 ...