为.NET和mono编写C#应用程序的准则

时间:2009-01-09 10:19:20

标签: c# .net mono cross-platform porting

Mono声称与.NET兼容。

你试过吗?

您是否可以分享使运行的.NET应用程序与mono兼容的任何提示或指南?

4 个答案:

答案 0 :(得分:5)

可能会MoMA帮助你

答案 1 :(得分:4)

请参阅这些文档以获得深入的答案:

答案 2 :(得分:3)

基本上,单位测试就像疯了一样!我在宠物项目(protobuf-net)上支持mono和C#,并且在不同平台的范围内进行编译很有趣(我支持mono,CF,Silverlight等) 。单声道中存在许多编译器错误(即使在当前版本中),特别是与泛型相关 - 这意味着您可能需要使用稍微不同的代码来使其以各种方式进行编译。

然后您需要考虑您需要哪些框架功能。例如,避免使用像WPF / WCF / WF这样的东西。但是,如果您坚持使用核心2.0功能,那么通常确定。尽管如此,仍然有许多单声道投掷NotImplementedException的地方。在最近的一个案例中,有两种方法可以做某事:“旧的”方式在单声道上起作用,但在MS中是[Obsolete]; “新”版本适用于MS,但单声道NotImplementedException。有趣!

答案 3 :(得分:0)

要记住两件事:

  • 不要尝试任何幻想。

  • 不要指望它首先在Mono下工作

Mono非常擅长你每天所做的事情,比如操纵字符串和显示网页。对于需要使用.NET运行时库的小隐藏角落的事情来说,这真的很糟糕。例如,Crypto仍在1.1中实现,甚至其中一些实际上并不起作用。

简而言之,Mono不是一颗银弹。