如何使用 Xamarin 或 Mono 使 c# .net 项目在多个平台上可用

本文关键字:平台 项目 net Xamarin 何使用 Mono | 更新日期: 2023-09-27 18:30:16

我有一个用.net框架编写的Visual C#项目。我知道.net生成一个仅在Windows上运行的.exe文件。我想在Mac和/或Linux上运行我的c#项目,而不仅仅是Windows。我在软件开发方面没有太多经验,但我被告知尝试使用 Mono 和/或 Xamarin 才能在跨平台上运行该项目。

我已经下载并使用了Mono和Xamarin,但找不到一种方法来"渲染"可以在跨平台上运行的版本。

谁能解释一下这是如何工作的,也许是获得所需产品的完整程序?

无论如何,谢谢你。一个困惑但积极进取的学生

如何使用 Xamarin 或 Mono 使 c# .net 项目在多个平台上可用

mono

/xamarin.ios/xamarin.android 仅提供完整 .NET 运行时的子集。另外,根据您选择的mac-os/ios等版本,您可能仍然有一个较小的子集。

您需要准确查看要支持的每个操作系统的版本,然后尝试围绕常用功能构建程序/应用程序。如果您使用了不可用的功能,则需要以适用于所有功能的方式重写它们,或者为每个功能编写特定于平台的代码并通过接口使用它们。

除非你对个别问题更具体,否则很难帮助你。查看执行与应用类似操作的 xamarin 示例应用并尝试遵循其准则可能会更容易。 他们可能使用了更好的做法,这将帮助您在此过程中学习。

编辑

此处为 Mono 实现的功能的比较列表。 你必须深入研究哪个版本适合你,我没有使用过单声道,只有 xamarin 变体。

http://developer.xamarin.com/guides/cross-platform/application_fundamentals/pcl/introduction_to_portable_class_libraries/

此链接将帮助解释可移植类库。本质上是一个与Android,Windows Phone和ios兼容的库。(这是一个库(.dll)而不是像你说的.exe输出,你被误导了Visual Studio只有一个.exe输出)。如果您在 xamarin 中设置一个可移植类库项目,它将设置一个能够呈现 android、WP 和 ios 的默认项目。

下面是另一个链接,可帮助您在 Xamarin 中设置可移植类库项目:http://developer.xamarin.com/guides/cross-platform/application_fundamentals/building_cross_platform_applications/part_3_-_setting_up_a_xamarin_cross_platform_solution/