與在 .NET Compact Framework 中桌面開發的不同之處
更新:2007 年 11 月
在開始裝置專案之前,您應該了解使用 .NET Framework 進行桌面開發與使用 .NET Compact Framework 進行裝置開發之間的差異。
LINQ
.NET Compact Framework 3.5 版中的 Language-Integrated Query (LINQ) 包含桌面 LINQ 功能的子集。如需詳細資訊,請參閱 .NET Compact Framework 中的 LINQ。
Visual Basic 中的程式設計項目
在使用 Visual Basic 進行 .NET Compact Framework 程式設計時,不需要具有與進行完整 .NET Framework 程式設計時相同的程式設計項目 (例如函式和關鍵字) 清單。Visual Basic 裝置語言參考摘要了這些差異,Visual Basic 參考針對各元素的個別主題中則說明了這些差異。
使用 My 進行開發
Visual Studio 包含對於 My.Resources、My.Forms 及 My.WebServices 的支援。不過沒有包含對於 My.Application、My.Computer、My.User 或 My.Settings 的支援。如需詳細資訊,請參閱 My 參考。
檔案輸入和輸出
Visual Basic 提供了兩種檔案輸入/輸出 (I/O) 的選項:
標準的 .NET FrameworkSystem.IO 命名空間 (Namespace)。Common Language Runtime (CLR) 中的所有語言都支援這些程式庫。
提供與舊版 Visual Basic 開發經驗類似的一組 Visual Basic 專屬程式庫。
裝置專案僅支援 .NET FrameworkSystem.IO 命名空間。不支援使用 FileSystem 命名空間的檔案 I/O,因為:
裝置中不存在 FileSystem 命名空間的一些常用功能。例如,裝置上並沒有目前目錄或目前磁碟機的概念。因此,您無法使用 ChDir 和 ChDrive 函式 (Function)。
由於僅支援 .NET FrameworkSystem.IO 命名空間,因而減少了 Visual Basic Helper 程式庫的大小。這樣也就釋放了裝置上的寶貴空間。
隱含晚期繫結
在 Visual Basic 中,當物件指派給宣告為 Object 資料型別的變數時,就是所謂的晚期繫結。此種型別的物件是在執行階段進行繫結。您可指派物件值,或是從物件擷取值。但是您無法使用點慣例指定物件變數的方法或屬性。因為下列程式碼會嘗試取得物件的屬性,所以會造成編譯器錯誤:
dim a as object = "automobile"
dim i as integer = a.horsepower
COM Interop
桌面開發人員藉由 COM 互通性來利用現有的 COM 物件。這些 COM 物件會以各自的速度轉換至 .NET Framework。裝置專案只支援 COM Interop 的某些案例。如需詳細資訊,請參閱裝置的 COM 互通性。
偵錯
附加至執行中的處理序,與從桌面附加有些不同。如需詳細資訊,請參閱 HOW TO:附加至 Managed 裝置處理序。
請參閱
概念
裝置專案的 .NET Compact Framework 參考
Visual Basic 中的 Me、My、MyBase 和 MyClass