在我的C#应用中,我通常会看到两个主要的命名空间System
和Windows
,例如:
系统:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
窗:
using Windows.Foundation;
using Windows.Media.Capture;
using Windows.Media.MediaProperties;
这两个命名空间有什么区别?根据哪些.NET类属于哪个命名空间,它们之间是否存在逻辑划分?
答案 0 :(得分:5)
MDNs ref(强调我的):
Windows
名称空间(Windows.Foundation
,Windows.UI
,Windows.UI.Xaml
,Windows.UI.Xaml.Controls.Primitives
,Windows.UI.Xaml.Media
,Windows.UI.Xaml.Media.Animation
和{{ 1}})包含用于管理应用程序用户界面的类型。... Windows名称空间中的类型[包含在.NET中 Windows 8.x商店应用。请注意,.NET for Windows 8.x商店应用程序不包括每种类型的所有成员。有关各个类型的信息,请参阅链接的主题。类型的文档表明.NET for Windows 8.x商店应用程序中包含哪些成员。
Windows.UI.Xaml.Media.Media3D
命名空间包含基本类和基类,用于定义常用的值和引用数据类型,事件和事件处理程序,接口,属性和处理异常。
要回答您的问题,System
命名空间中的类型仅适用于仅限Windows ;那些Windows
中的人与平台无关(正如@DStanley在评论中指出的那样)。
请注意,C#可以在不同于Windows的平台上运行 - 例如,使用System
Namespace(适用于Linux)或Mono(适用于iOS或Android等)。