天天看点

.NET之全平台一体化的体验

.NET之全平台一体化的体验

利用.NET技术打造一个全平台软件的简单构思与简单实现。

近来利用空闲时间研究了一下Xamarin的技术,想想既然提供了如此好的支持,就该尝试一切可能,来一个”大小通吃“。

何为全平台:APP包括Android、IOS、WP,WEB可在Window和Linux部署运行(进可攻,退可守)

先来看张图吧

.NET之全平台一体化的体验

这个是本人实现项目的截图,比较简单。

app那块的话,目前仅实现了Android,IOS的话,没有机器,不想在虚拟机装(已经装了3个Linux了,再装估计要卡爆了)

UWP也是机子问题(还未升级到win 10 10568,界面不能实时看到调起来很蛋疼,所以暂时现放着,过段时间补上)

对于我这种情况来说,标题说成是全平台是夸大了一点,但是却是完全可行!!不是弄虚作假的。

下面来说说“进可攻,退可守”

这个问题主要是针对web端的。

先来说说“进可攻”,可以在linux下部署我们的后台网站和数据服务,主要的话还是Jexus(免安装mono版)和TinyFox

不是我不用ASP.NET Core,而是用的我好揪心所以就没用了。

"退可守",我们还有win server 的IIS

.NET之全平台一体化的体验

看,我真的没有装mono喔!!!

然后简单说说一些细节上的东西

目前有14个子项目分在5个项目文件夹里面(包含几个测试项目)

01-APP 是app相关的

02-Website 是后台管理的网站,基于NancyFx,身份验证用了自带的Forms Authentication

03-DataService 主要用于给app提供数据服务,或者可以说是接口,这里我写了两套,一套基于MVC,一套基于NancyFx(使用OWIN)

04-Core 是数据访问和模型,用到了Dapper

05-Logic 逻辑层

里面用到Nancy和app的简单使用,都可以在我前面的博客找到相应的用法 

其中包含了几个测试项目,用到的是xUnit,不过前三个项目文件夹的测试还没有做,对app的UI测试还是懵懂状态

evolve 2016上看到 Test Cloud Live 很开心,不过到处找不到,最后发邮件去问,得到的回复如下

“Keep a look out on our blog for more information on when Test Cloud Live is available to everyone. But yes, at this time, it's not open for general use.”

有点小小的失望。

最后来看看部分运行图吧(界面很丑,很丑,很丑,不要吐槽)

.NET之全平台一体化的体验
.NET之全平台一体化的体验
.NET之全平台一体化的体验

上面是Android端的

下面是Web端的(server是jexus/5.8.1.3 Linux)

.NET之全平台一体化的体验
.NET之全平台一体化的体验
.NET之全平台一体化的体验
.NET之全平台一体化的体验

至于源码的话,现在还有许多bug,所以暂时不上传,6月底或者7月初会上传到github

.NET之全平台一体化的体验

如果您认为这篇文章还不错或者有所收获,可以点击右下角的【推荐】按钮,因为你的支持是我继续写作,分享的最大动力!

作者:Catcher Wong ( 黄文清 )

来源:http://catcher1994.cnblogs.com/

声明:

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如果您发现博客中出现了错误,或者有更好的建议、想法,请及时与我联系!!如果想找我私下交流,可以私信或者加我微信。

继续阅读