[C#]Json.NET - A high performance Json library

Json.NET是一個高效能的Json函式庫,提供開發人員針對Json格式開發所需的功能。該函式庫具備有以下的特點: Flexible JSON serializer for converting between .NET objects and JSON LINQ to JSON for manually reading and writing JSON High performance, faster than .NET’s built-in JSON serializers Write indented, easy to read JSON Convert JSON to and from XML Supports .NET 2, .NET 3.5, .NET 4, Silverlight, Windows Phone and Windows 8 Metro. ...

November 6, 2013 · 6 min · 2667 words · Larry Nung

[C#]Json.NET - Reducing Serialized JSON Size

筆者在[C#]Json.NET - A high performance Json library這篇簡單的帶過了一下JSON.NET這個序列化函式庫,基本的操作只要理解那篇大概都不成問題,但最近在使用上JSON.NET又碰到一個問題,就是有時候沒有資料並不是總是不要序列化,所以我們不能帶上JsonIgnoreAttribute去總是忽略它,而是必須要做些特殊的判斷,像是欄位有時候會是Null或是空的集合,這時候我們序列化傳送也只是增加無謂的資料量,因此我們必須做些對此做些處理。 接下來筆者以[C#]Json.NET - A high performance Json library這篇的例子來做個簡單的說明,假設我們有個Person類別長得像下面這樣: public class Person { public String Name { get; set; } ...

November 6, 2013 · 3 min · 1030 words · Larry Nung

[C#]Linq在使用Distinct去除重複資料時如何指定所要依據的成員屬性

最近專案中在用Linq Distinct想要將重複的資料去除時,發現它跟Any之類的方法有點不太一樣,不能很直覺的在呼叫時直接帶入重複資料判斷的處理邏輯,所以當我們要用某個成員屬性做重複資料的判斷時,就必需繞一下路,這邊稍微將處理的方法做個整理並記錄一下。 ...

November 6, 2013 · 3 min · 1214 words · Larry Nung

[C#]ListBox如何偵測Item的新增、插入、與刪除

有時候我們使用ListBox元件會想要針對Item的新增、插入、與刪除做些反應,可能像是有個Item插入時我們會想把游標移到最下面之類的。但內建的ListBox並未將這樣的訊息開放出來,所以我們無法直接的去做這樣的處理,必須要自行去接收視窗訊息才行。 ...

November 6, 2013 · 2 min · 767 words · Larry Nung

[C#]MEF開發系列 - Managed Extensibility Framework(MEF)的概念與簡介

Managed Extensibility Framework(MEF)是.NET 4.0與Silverlight 4.5開始內建在BCL中的輕量型可擴充式框架(若是使用.NET 3.5,也可以另行加入組件使用),可以輔助開發人員建立具有擴充彈性且易於維護的應用程式。 ...

November 6, 2013 · 5 min · 2339 words · Larry Nung

[C#]Notifyicon.Text 突破 64 字元的限制

最近在寫程式時需要將一些資訊顯示在NotifyIcon上,才注意到NotifyIcon.Text有64個字元的限制。 ...

November 6, 2013 · 1 min · 453 words · Larry Nung

[C#]PE檔案格式簡易介紹與PE檔案的檢測

PE檔案是Portable Executable的簡稱,是windows系統中任何可執行模組或者DLL的檔案格式。這邊要介紹一下如何透過程式檢測檔案是否為合法的PE檔,因此必須針對PE檔的格式做些初步的介紹,就讓我們先來看一下PE檔的格式圖吧: ...

November 6, 2013 · 4 min · 1637 words · Larry Nung

[C#]Process.Exited事件觸發的執行緒會受Process.SynchronizingObject屬性設定的影響

最近在用Process時才發現自己對於Process類別實在不是很熟,本來以為在主執行緒將Process叫起來後關閉,Process.Exited事件會被導回主執行緒去觸發,後來才發現並不是那麼一回事,這邊以一個簡單的範例來看: using System; using System.Diagnostics; using System.Threading; using System.Windows.Forms; ...

November 6, 2013 · 2 min · 758 words · Larry Nung

[C#]Set Windows 7 Progress Bar's State

要在Win7設定Progressbar的運行狀態,可能是一般運行狀態,可能是暫停狀態,或是錯誤狀態。 ...

November 6, 2013 · 2 min · 632 words · Larry Nung

[C#]仿照Chrome的Multi-process Architecture

筆者在上一篇[C#]如何在程式中內嵌其它應用程式稍稍整理了一下怎樣嵌入外部程式到UI上,這邊要接著嘗試仿照Chrome的Multi-process Architecture做一個簡易的瀏覽器。若有需要範例程式,可至larrynung / MultiProcessArchitectureDemo這邊下載。 ...

November 6, 2013 · 3 min · 1162 words · Larry Nung