2013-09-25 41 views
15

我看到.NET framework中的大多數類型分佈在3個不同的命名空間(可能更多),一個開始於Microsoft,其他開始於System,第三個開始於Windows。例如,有Windows.System.Threading.ThreadPoolSystem.Threading.ThreadPool命名空間語義差異

這個設計有明顯的語義差異嗎?

回答

19

Microsoft.*命名空間通常是特定於Windows的功能的.NET命名空間,例如,註冊表訪問

System.*命名空間是 「正常」。NET系統命名空間

Windows.*命名空間通常是Windows運行時的一部分又名WinRT中(適用於Windows 8 Store應用程序的Windows Phone 8)

+0

+1:簡短,很好,很清楚。 –

6

Windows,是Windows8系列SDK。

System適用於常見的.NET名稱庫。

Microsoft是針對某些特定於Windows的操作系統功能。

3

System命名空間是爲.NET Framework保留的。

Microsoft命名空間保留供Microsoft使用,但不包括.NET Framework的.NET庫。

Windows命名空間適用於Windows 8 WinRT組件。這些本身不是.NET,但是投射到Windows 8應用程序的.NET中。