首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >跨平台的.Net框架到底是怎样的?

跨平台的.Net框架到底是怎样的?
EN

Stack Overflow用户
提问于 2010-05-05 04:53:41
回答 4查看 3.4K关注 0票数 10

要在Mac或Linux机器上运行WinForms应用程序,通常需要做些什么?

a.只需复制并运行(假设他们已经安装了框架)。

b.重建。

c.美化源代码修改。

d.大量源代码修改和表单重新设计。

假设应用程序是通过Visual C# Express或Visual Studio2008以.Net Framework3.5为目标开发的,100%托管C# 3代码,不使用任何第三方组件/库进行开发,没有封装非托管代码或任何低级黑客-仅使用微软文档记录的标准.Net框架C#。或者相同的条件,但是C# 4语言、.Net Framework4和Visual Studio2010。

在使用MS .Net框架和Visual Studio时,有没有开发Mono-ready应用程序的实用指南?任何指南、技巧、特定方面的亮点,告诉开发人员他真正需要记住的是什么,以便编写一个易于移植的应用程序,而不必在Visual Studio中编码时在Mono引用中查找每个函数。

EN

回答 4

Stack Overflow用户

发布于 2010-05-05 04:58:43

你的应用程序有可能只需要零修改就可以运行,但我还没有在现实世界中看到这种情况发生。

一个可能对你有很大帮助的工具是MoMA。MoMA是由制作Mono的人开发的,如果你正在使用任何尚未移植的功能,它会告诉你。

一般来说,WinForm3.5和.NET还可以。与版本4的兼容性仍在开发中。

如果你在Windows上进行开发,一个更新的工具是微软的.NET Portability Analyzer。这可以通过Visual Studio使用。

票数 12
EN

Stack Overflow用户

发布于 2010-05-05 04:59:20

如果它是一个Windows窗体应用程序,使用标准的Windows窗体控件,并且没有第三方组件,你通常可以直接在Mono上运行,只需复制并运行即可。

Mono很好地支持Windows Forms和C# 3功能。

然而,如果你使用任何本机组件,在Mono或WPF支持之外的数据访问,你会遇到问题。在这一点上,C# 4/.NET4也很可能无法工作。

票数 5
EN

Stack Overflow用户

发布于 2010-05-05 05:03:03

嗯,我没有开发大型项目,但根据我的经验,你必须对你的代码进行一些小的修改,但只是为了改进一些东西。应用程序本身不需要重新编译就可以很好地运行。至于windows窗体,当我使用GDi时,我发现它有时非常慢,但也许我只是做错了什么。然而,Mono团队声称他们完全支持windows forms。

还有一件事值得一提。编写一个跨平台的应用程序真的很难,如果不使用一些原生操作系统特性就不会很苛刻。我认为您应该始终考虑编写一些额外的特定于操作系统的模块的可能性,以提供与底层操作系统的紧密集成,并利用一些很酷的东西(比如OSX中令人惊叹的工具栏功能)。你还应该记住,人们习惯于在不同的操作系统上有不同的外观和感觉

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2768905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档