.net - MonoTouch 和 MonoDroid 中的 PortableDLL

标签 .net mvvm xamarin.ios xamarin.android

您能否在 Full.NET、WindowsPhone、Silverlight、MonoTouch、MonoDroid 之间共享 .NET DLL(使用 Visual Studio 以 VB.NET 编写)。 ( future 还有 WinRT)

这可能吗?

我不想分享 UI 代码,主要是模型,但也可能是一些 ViewModel(即使用 MVVM)

我想知道使用可移植 DLL 是否可行?
http://visualstudiogallery.msdn.microsoft.com/b0e0b5e9-e138-410b-ad10-00cb3caf4981/

更多细节:
这不是我今天需要的东西。
我正在考虑为 .NET 4 重新构建用 VB.NET 编写的现有项目。这将在明年左右进行。只是想知道 Mono* 设备是否能够播放......

谢谢,
迈克·G

最佳答案

使用常规 .NET 程序集:是和否的组合。广泛地说,是的。但实际上,由于每个平台的限制,通常需要进行特定于平台的更改,这将阻止它运行程序集。 IDE 也不喜欢某些引用组合。 monodevelop IDE 在接受哪些程序集方面更宽松。

重新处理不起作用的事情;可能是一些愚蠢的事情,例如 Trace.WriteLine(...)存在,或者(最近在“unity”上,Interlocked ),或者它可能是平台限制(例如,你不能在 iOS 上做那么多的元编程)。

WinRT 为破坏事物设立了一个新的“标准”,整个过程发生了根本性的变化(诸如 Type 之类的基本原理已经发生了巨大变化)。

我的建议:按平台构建;否则,您将自己限制在最小公分母上,这不是可选的。利用每个平台上存在的内容,并在不存在时使用后备。

关于.net - MonoTouch 和 MonoDroid 中的 PortableDLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9031082/

相关文章:

xamarin.ios - 可执行文件名(AppName1.exe)和应用名(AppName2.app)不同

c# - C# 中的线程、值类型和引用类型说明?

c++ - 如何配置 VS 2017 中的 Windows 安装程序应安装哪个 .NET 版本

.net - Visual Studio 2013 : Creating a new ASP. 没有 nuget 的网络项目

silverlight - 在运行时动态指定和更改 Silverlight DataGrid 的列 (MVVM)

android - 重新创建 View 后, fragment 从ViewModel中丢失数据

iphone - 单点触控中的 session 维护?

c# - C# 中的聚合与继承,或替代方案

c# - 从后面的代码更新 ComboBox SelectedItem

xamarin.ios - Xamarin MVVMCross 替代方案