【问题标题】:Mono vs .NET Interop curiosityMono 与 .NET 互操作的好奇心
【发布时间】:2010-03-23 19:34:58
【问题描述】:

我正在通过 Mono 使用 C# 为 Unix 开发一个巨大的控制台应用程序。 如果我使用 M Visual Studio 和 .NET 3.5 开发该应用程序并且我小心忽略了使用 win32 特定 API 调用,我是否应该期望该应用程序自动在我的 Unix 机器中运行?还是我应该直接使用 MonoDevelop 并采用 Mono 方式?

【问题讨论】:

    标签: .net unix interop mono


    【解决方案1】:

    根据Mono compatibility page Mono 支持:

    .NET 3.5 中的所有内容,除了 WPF 和 WF,WCF 有限。

    如果您想在 Visual Studio 中进行开发,您应该在 Mono 上进行定期测试,以确保您没有遇到困难。

    【讨论】:

    • 太棒了,尤其是像 MoMA 这样的工具
    • 将 linq to sql 添加到单声道尚不支持的内容列表中
    • 在撰写此评论时,现在是Everything in .NET 4.0 except WPF, EntityFramework and WF, limited WCF.(包括Linq to SQL,请参阅答案链接中的详细信息)
    【解决方案2】:

    您还可以使用 Visual Studio 的 Mono Tools 插件,它允许您在 Linux 上进行远程测试、在 Linux 系统上部署它等。它是商业的,但有免费试用版。

    http://go-mono.com/monotools/

    【讨论】:

      【解决方案3】:

      一般来说,如果您只使用单声道支持的东西,您可以使用 Visual Studio 进行开发,但是您还必须经常在单声道上进行测试。不仅是 windows 的单声道,而且是在目标操作系统上运行的单声道。您可以通过使用 mono addins for visual studio. 在目标操作系统上远程调试来从 Visual Studio 执行此操作

      虽然说 MonoDevelop 现在确实变得非常好,但我认为没有理由不完全跳过 Visual Studio 并在目标操作系统上使用 MonoDevelop 进行开发。这样你就完全不用担心差异了。

      【讨论】:

      • 我无法在目标操作系统上积极开发。它是云端远程管理的 CentOS。没有 X,我只有一个 SSH 终端。
      猜你喜欢
      • 2010-12-27
      • 2020-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多