Xamarin跨平台开发.net

问题描述:

我们正在开发一个使用Xamarin的跨平台移动应用程序。我注意到使用共享代码或PCL/.net标准有不同的方法来构建您的代码。 我试图使用.net标准,我发现它不包括所有的库,如使用ado的东西,数据表/数据集使用system.data。例如使用system.net。其他功能有较少的重载,似乎它是一个剥离版本的.NET跨平台工作。有什么方法可以添加此功能或使用更广泛的.net?Xamarin跨平台开发.net

你是对的 - .Net标准和.Net核心是完整​​的.Net框架的精简版本。它们仅包含可用于所有平台(Mac,Android,iOS,Linux,Windows等)的功能。

完整的.Net框架只需要在Windows上工作,因此您还可以执行其他操作基于这样一个事实,即实现的复杂性较低,代码库更加成熟(C#标准中的跨平台仍然非常新颖)。据我的记忆,System.Net应该可以工作,如果你的引用是正确的,但System.Data不会(或者至少不能直接访问数据库)

你可以通过NuGet包重新获得一些功能,但它不会像使用WinForms或类似的东西一样...

我最好的建议是针对API编程。您可以使用在正常(完整).Net框架上运行的Web服务器,并使用您习惯的所有.Net功能完成所有繁重工作。您的Xamarin应用程序将发送和接收来自API的数据,并基本为您正在做的任何事情提供移动前端。这种方法对于大多数应用程序来说都是有意义的,而且一般来说,如果您使用Swift和Java创建独立的iOS和Android应用程序,您通常会这样做。