Xamarin.ios 创建与桌面、wp7和monotouch兼容的程序集

Xamarin.ios 创建与桌面、wp7和monotouch兼容的程序集,xamarin.ios,Xamarin.ios,因此,我试图找出如何创建一个具有核心功能的程序集,该程序集可用于支持Windows Phone 7、桌面和单触功能的设备。我如何在MonoDevelop中设置它 如果我以通常的方式创建一个程序集,我不能将其添加为monotouch项目的引用,但是我可以将monotouch程序集添加到桌面甚至wp7设备吗 作为一个附带问题。有没有人尝试过一个人坐在VisualStudio上,另一个人坐在monodevelop上的跨平台开发?这是怎么回事?谢谢 您不能将源代码直接编译到程序集,而只需将程序集链接到不

因此,我试图找出如何创建一个具有核心功能的程序集,该程序集可用于支持Windows Phone 7、桌面和单触功能的设备。我如何在MonoDevelop中设置它

如果我以通常的方式创建一个程序集,我不能将其添加为monotouch项目的引用,但是我可以将monotouch程序集添加到桌面甚至wp7设备吗


作为一个附带问题。有没有人尝试过一个人坐在VisualStudio上,另一个人坐在monodevelop上的跨平台开发?这是怎么回事?谢谢

您不能将源代码直接编译到程序集,而只需将程序集链接到不同平台的项目中即可

例如在Monotouch和Monodroid中,这是因为它使用AOT提前编译器来创建二进制输出

因此,所有SDK都链接在程序集中,而程序集实际上是一个特定的、为特定平台定制的程序集


因此,要做到这一点,您需要将该项目作为源代码共享,如果您遵循一些规则,例如在Windows上使用Mono,那么它在不同平台上都能很好地工作。我的解决方案是使用共享代码创建一个常规的c类库项目。然后创建一个monotouch类库,并从原始类库添加到代码的链接。单机器人项目也是如此


通过这种方式更新一个项目中的.cs文件将更新其他项目。

当然可以,但在MonoDevelop中如何做到这一点?这里没有源代码项目。我想要的只是能够链接到包含核心功能的项目,而Monotouch或Monodroid或其他任何东西在构建启用Monotouch的项目时会编译它。通常,使用编辑引用-打开项目,展开它,右键单击项目部分引用,然后从菜单中选择编辑引用。。。,在对话框中选择适当的引用,可以是解决方案中的其他项目,也可以是外部.NET程序集或核心程序集-包。如果选择.NET程序集,则必须将其编译到正在构建的项目中,如果选择Monotouch项目,则只能添加Monotouch引用。不幸的是,MonoDevelop不允许我将非Monotouch引用添加到Monotouch项目中。。。所以,如果我想为我的所有UI创建一个核心程序集,我需要为每个UI创建一个单独的库项目,并使用相同的代码?这就是我试图避免的:这就是我试图解释的,你不能那样做。只有一个项目类型和一个部署。不能把Monodroid和Monotouch混为一谈,反之亦然……伙计,这是不礼貌的。谢谢你的回答,先生: