选项:
- 将图像表示为 byte[] 或 MemoryStream/Stream
使用本机平台特定代码需要部分类并链接 Customer.cs 中的公共类 - 通过项目链接我将此方法称为 split-n-link 或 link-n-split
公共部分类客户{公共字符串名称;公共国际年龄;}
单点触控项目中单点触控的增量类
public partial class Customer {
public UIImage;
}
m4a 项目中用于 android 的单声道的 delta 类
public partial class Customer {
public ImageView;
}
因此,每个项目将包含 Customer.cs 一个原始/源代码和其他链接,如果处理 Windows Phone,则取决于偏好或共同特征分母(目前它具有最小的功能集 - 更好的是限制性更强) . 除了 main/original/source Customer.cs 文件之外,还有 2 个(如果是 WP,则为 3 个)具有平台特定内容的增量。请记住,部分类是“附加的”,这意味着您可以在不同的 cs 文件中添加属性并应用它们,因此在这个 delta 类中,可以添加特定于平台的属性,并在需要时启用诸如绑定 iOS 广告/或 Android 之类的东西。从 Holisticware 经验(Visual Studio 为中心 80%+,Mac 上 20% 或更少)源项目是 Mono for Android,但它可能是反向的......
使用 link-n-spilt 基本上以 POCO + delta 结尾,并且此 POCO 可用于定位桌面平台(WF、WPF),其中一切都更容易:调试、单元测试等。
并且每个项目都使用该平台的配置进行编译/构建的优势 - 所以来自 Xamarin 的 ig 家伙想出了一些其他的好主意来构建大小优化,这不应该影响项目 - 重新编译并开始!
HTH 梅尔