可用程序集
Xamarin.iOS、Xamarin.Android 和 Xamarin.Mac 都附带十几个程序集。 正如 Silverlight 是桌面 .NET 程序集的扩展子集一样,Xamarin 平台也是多个 Silverlight 和桌面 .NET 程序集的扩展子集。
Xamarin 平台与为不同配置文件编译的现有程序集不兼容。 必须重新编译源代码以生成面向正确配置文件 (的程序集,就像需要将源代码重新编译为分别面向 Silverlight 和 .NET 3.5) 一样。
Xamarin.Mac 应用程序可在三种模式下编译:一种模式使用 Xamarin 的特选移动配置文件,一种是 Xamarin.Mac .NET 4.5 框架(允许以现有完整桌面程序集为目标),一种是使用系统 Mono 安装中的 .NET API 的不受支持的模式。 有关详细信息,请参阅 目标框架 文档。
.NET 标准库
除了 iOS、Android 和 Mac 绑定之外,Xamarin 项目还可以使用 .NET Standard 库。
可移植类库
Xamarin 项目也可以使用 .NET 可移植类库,尽管此技术已弃用,转而支持 .NET Standard。
支持的程序集
这些是引用管理器>程序集>框架 (Visual Studio 2017) 和编辑引用>包 (Visual Studio for Mac) 中提供的程序集,以及它们与 Xamarin 平台的兼容性。
程序集 | API 兼容性 | Xamarin iOS | Xamarin Android | Xamarin Mac |
---|---|---|---|---|
FSharp.Core.dll | ||||
l18N.dll | 包括中日韩、中东、其他、稀有、西部 | |||
Microsoft.CSharp.dll | ||||
Mono.CSharp.dll | ||||
Mono.Data.Sqlite.dll | SQLite 的 ADO.NET 提供程序;请参阅限制。 | |||
Mono.Data.Tds.dll | TDS 协议支持;用于 System.Data 中的 System.Data.SqlClient 支持。 | |||
Mono.Dynamic.Interpreter.dll | ||||
Mono.Security.dll | 加密 API。 | |||
monotouch.dll | 此程序集包含对 CocoaTouch API 的 C# 绑定。 这仅在经典 iOS 项目中可用。 | |||
MonoTouch。Dialog-1.dll | ||||
MonoTouch。NUnitLite.dll | ||||
mscorlib.dll | Silverlight | |||
OpenTK-1.0.dll | 面向对象的 OpenGL/OpenAL API,已扩展以提供 iPhone 设备支持。 | |||
System.dll | Silverlight,以及以下命名空间中的类型: System.Collections.Specialized 系统。ComponentModel System.ComponentModel.Design System.Diagnostics System.IO System.IO.Compression System.IO.Compression.FileSystem System.Net System.Net.Cache System.Net.Mail System.Net.Mime System.Net.NetworkInformation System.Net.Security System.Net.Sockets System.Runtime.InteropServices System.Runtime.Versioning System.Security.AccessControl System.Security.Authentication System.Security.Cryptography System.Security.Permissions System.Threading System.Timers |
|||
系统。ComponentModel。Composition.dll | ||||
系统。ComponentModel。DataAnnotations.dll | ||||
System.Core.dll | Silverlight | |||
System.Data.dll | .NET 3.5 , 其中删除了一些功能。 | |||
System.Data.Services。Client.dll | 完整的 oData 客户端。 | |||
System.IO.Compression | ||||
System.IO.Compression。文件 | ||||
System.Json.dll | Silverlight | |||
System.Net.Http.dll | ||||
系统。Numerics.dll | ||||
System.Runtime.Serialization.dll | Silverlight | |||
系统。ServiceModel.dll | Silverlight 中存在的 WCF 堆栈 | |||
系统。ServiceModel。Internals.dll | ||||
系统。ServiceModel。Web.dll | Silverlight,以及以下命名空间中的类型: 系统 System.ServiceModel.Channels System.ServiceModel.Description System.ServiceModel.Web |
|||
系统。Transactions.dll | .NET 3.5; System.Data 支持的一部分。 | |||
System.Web.Services.dll | .NET 3.5 配置文件中的基本 Web 服务,其中删除了服务器功能。 | |||
系统。Windows.dll | ||||
系统。Xml.dll | .NET 3.5 | |||
System.Xml。Linq.dll | .NET 3.5 | |||
System.Xml.Serialization.dll | ||||
Xamarin.iOS.dll | 此程序集包含对 CocoaTouch API 的 C# 绑定。 这仅在统一 iOS 项目中使用。 | |||
Java.Interop.dll | ||||
Mono.Android.dll | ||||
Mono.Android.Export.dll | ||||
Mono.Posix.dll | ||||
系统。EnterpriseServices.dll | ||||
Xamarin.Android.NUnitLite.dll | ||||
Mono.CompilerServices.SymbolWriter.dll | 对于编译器编写器。 | |||
Xamarin.Mac.dll | ||||
系统。Drawing.dll | Xamarin.Mac、.NET 4.5 或移动框架的统一 API 不支持 System.Drawing。 可以使用 sysdrawing-coregraphics 库将 System.Drawing 支持添加到 iOS 和 macOS |