ste*_*ter 8 visual-studio xamarin.ios portable-class-library xamarin
我目前已经构建了一个服务层和API,我正在从ASP.NET网站,Windows Phone应用程序和Windows 8 metro应用程序中消费 - 所有这些应用程序的关键是包含模型类的项目,这是一个可移植的类库项目,并作为所有这些项目之间的参考共享.这种架构工作正常,没有任何问题.
但是,我最近开始尝试使用Xamarin - 特别是iOS功能(以便稍后迁移到Android).我最初的假设是,我可以像使用其他项目那样使用这个模型库 - 但是,我已经意识到这不是这种情况.
当我第一次将我的模型类库的引用添加到我的Xamarin.iOS项目(在Visual Studio中)时,我遇到了错误:
"当前项目不支持对可移植库项目的引用".
奇怪 - 我认为这将是一个可以支持的场景.我在这里发现了一篇帖子,其中提出了一个修复程序,强制Visual Studio将Monotouch(Xamarin)框架检测为支持可移植库项目.似乎正是我所需要的 - 但没有.当我再次添加引用时,我遇到了一个不同的错误:
"当前项目的目标框架与Portable Library项目的框架不兼容".
它建议我更改项目属性中的目标框架.除了我不能,因为Xamarin iOS项目需要支持Monotouch(我无论如何也无法将其改为GUI中的任何其他内容).所以我试着改变模型库的属性 - 也许我可以在那里做点什么.它看起来像我可以.我可以在这里检查Monotouch(Xamarin)作为支持平台(已经检查过Windows手机,Windows商店等),但它不会让我保存.它只显示消息:
'您选择的目标框架不支持其他功能'
经过一些研究,我发现Xamarin建议共享代码的唯一方法是使用带有链接代码文件的单独项目(实际上,这是一个伪单个代码库.我尝试过并且有效 - 但它似乎是一个黑客.这里:
这是唯一的选择吗?或者有没有办法在所有平台上拥有真正的单一类(模型)库,包括Microsoft和Xamarin?
Xamarin 方面的未来是光明的,因为它将在其所有平台上支持 .NET 4.5 配置文件,
http://blog.xamarin.com/brave-new-async-mobile-world/
据我所知,唯一的问题来自微软方面,他们拒绝将自己的平台统一到一个通用的配置文件(Windows 8和Windows Phone 8仍然是混乱的定制版本,在我自己的情况下并不比CF或Silverlight好)。
可移植类库就在那里,但作为库作者 ( #SNMP ),我宁愿按照 Xamarin 的建议为我自己的项目构建单独的项目文件。
| 归档时间: |
|
| 查看次数: |
1830 次 |
| 最近记录: |