The Practice of .NET Cross-Platforms
0x01 Preface
This post is mainly to share the technologies on my practice about the .NET Cross-Platforms.
If you had watched my first top post,you will know most of technologies uesd in my practice.Now,
I will Introduce the detials about this. Ready to go? Let's start!
0x02 What I am using
1. Xamarin
Using the Xamarin to build the mobile Apps,such as the Android app and the IOS app.but in
my practice,I only completed the Android app,the IOS app didn't complete yet,Ohm..because I do
not hava a Mac,I can't compiler the application.
2. Universal Windows Platform(UWP)
Using the UWP to build the App of Windows Phone mobile or Windows . Due to my busy job,I can't
complete it as well . I am learning the Encrypt and Decrypt Algorithms on the UWP , there are some
differents between UWP and other situation,such as the namespace,the dealing method.
3. NancyFx
Using the NancyFx to build the manage website and the data service website.The manage website
is hosting with aspnet and the data service website is hosting with owin.
4. MongoDB(Migrated from MS SQL Server)
At first,I use the MS SQL Server as my database , but I think it is not suitable for a little application .
So I migrated the database from MS SQL Server to MongoDB.And I use RobThree's MongoRepository to
Operate the MongoDB. It's very convenient to use MongoRepository like the Entity Framework , but there
are some differents between them.
0x03 How do I do
Let's look at the below picture first.

There are two websites : one is the data service,providing the services for the mobile,
the other one is the manage website,managing the data of this system.
The more detials are as follow:
I use two Virtual Machines to host the Data Service and the Manage website.The Operation
System of both two Virtual machines is CentOS.
For the Data Service,I depoly it with the TinyFox . The Data Service is based on the NancyFx
and OWIN,why I choose this combination? RESTful , RESTful , RESTful .This combination do
well in it . You can try this combination in your project.

For the Manage Website,I depoly it with the Jexus . The Manage Website is based on the NancyFx
Hosting with asp.net.So, there is no doubt that I will choose the Jexus for the Server.

If you do not hava any ideas of Jexus and the TinyFox , you can find them in http://linuxdot.net/
And what about the database?
I use my own compute to host the MongoDB.I build a service for MongoDB so that makes it easy to use.

Completed the above step, all of the things are done.At this time, the apps can run successfully.
0x04 What I am thinking about the next
Using the Xamarin to build the Navite Apps is a very good things,we can do everything like
the Navite Android and the IOS.Xamarin.Android and the Xamarin.IOS can do those work for us .
And I think the Xamarin.Forms may more suitable for what I do . And there are some problems
when I use the Xamarin.Forms . For everything , the best way may not exist , but the suitable way do exist .
Using the NancyFx to build the data service and the manage website will not change.I konw
the asp.net core rtm will Release soon,but I still do not want to use it now. The NancyFx team is also working hard .
The Cross-Platforms is very nice.
This is the first time for me to use the english to write a post, so many oral english here. Please forgive me and
my mistakes on this post.
And I am ready to find a new job after finishing all of my tasks . Maybe one month or a little more . If your company need
a developer not on time , you can Contact with me.
At last,the source code
https://github.com/hwqdt/Catcher.Finance
The Practice of .NET Cross-Platforms的更多相关文章
- C++ development cross platforms
1. target platforms: linux suse, windows server, both use vmware virtual machine on lab server. 2. c ...
- [Erlang 0114] Erlang Resources 小站 2013年7月~12月资讯合集
Erlang Resources 小站 2013年7月~12月资讯合集,方便检索. 附 2013上半年盘点: Erlang Resources 小站 2013年1月~6月资讯合集 小站地 ...
- 什么是Cocos2d-x
以下是官方对Cocos2d-x的说明." Cocos2d-x is an open-source mobile 2D game framework, released under ...
- Chapter 6 - How to Play Music and Sound Effect
In this chapter, we would add background music to the game and play sound effect when the hero fires ...
- 通过HTML5的getUserMedia实现拍照功能
参考HTML5Rocks的这篇文章实现的一个简单的例子. 思路如下: 1. 把冰箱门打开 2. 把大象放进冰箱里 3. 把冰箱门关上 好了不开玩笑了,其实思路是: 1. 通过getUserMedia调 ...
- Cross Site Request Forgery (CSRF)--spring security -转
http://docs.spring.io/spring-security/site/docs/3.2.0.CI-SNAPSHOT/reference/html/csrf.html 13. Cross ...
- Computer Graphics Principles And Practice (James Foley / Andries Van Dam / Morgan McGuire / David Sklar / James D. Foley 著)
1 Introduction 2 Introduction to 2D Graphics Using WPF 3 An Ancient Renderer Made Modern 4 A 2D Grap ...
- XSS CSS Cross SiteScript 跨站脚本攻击
XSS攻击及防御 - 高爽|Coder - CSDN博客 https://blog.csdn.net/ghsau/article/details/17027893 XSS又称CSS,全称Cross S ...
- Comparing Xamarin and Delphi XE5 to Xcode for Cross Platform Mobile App Development
Comparing Xamarin and Delphi XE5 to Xcode for Cross Platform Mobile App Development If you are consi ...
- aarch64 cross compile 交叉编译 opencv
需求 : linux host : UBUNTU opencv source : opencv 3.3.1.zip CMAKE : apt-get install cmake cmake-qt- ...
随机推荐
- ASP.NET Web API 2.1支持Binary JSON(Bson)
ASP.NET Web API 2.1内建支持XML.Json.Bson.form-urlencoded的MiME type,今天重点介绍下Bson.BSON是由10gen开发的一个数据格式,目前主要 ...
- 安卓动态调试七种武器之长生剑 - Smali Instrumentation
安卓动态调试七种武器之长生剑 - Smali Instrumentation 作者:蒸米@阿里聚安全 0x00 序 随着移动安全越来越火,各种调试工具也都层出不穷,但因为环境和需求的不同,并没有工具是 ...
- Android APK是否需要预解压
今天在逛论坛的时候,发现有一个朋友问的问题.其主要目的,是想实现 玩家首次进入游戏的时候,或者新安装了版本的时候,对APK进行解压,写入SD卡.这样游戏运行过程中,将不会再从APK中读取资源. 以提高 ...
- Android学习第一天-adb常用命令
平时开发android应用 的时候,我们都会用到包含在Android SDK中一系列的工具,或许我们通过Eclipse去调用,又或许,我们自己通过打开终端进行手动输入并且执行,下面我们来一起学习下这些 ...
- netstat
netstat再解读 C:\Users\Administrator>netstat -nb 活动连接 协议 本地地址 外部地址 状态 TCP ESTABLISHED [mysqld.exe] T ...
- iOS-提高iOS开发效率的方法和工具
提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时 ...
- Ajax_03之接收数据
1.使用XHR接收服务器返回的数据--text 服务器端: header('Content-Type:text/plain'); echo 'xxx'; 客户端: xhr.responseTex ...
- 移动端页面按手机屏幕分辨率自动缩放的js
<script> var phoneWidth = parseInt(window.screen.width); var phoneHeight = parseInt(window.scr ...
- Sublime 快捷键
语法快捷键: 后代:> 缩写:nav>ul>li <nav> <ul> <li></li> </ul> </nav& ...
- OPENVPN+MYSQL认证+客户端配置
安装环境:ubuntu 12.04 x64 一 服务器端 1.安装openvpn及相应包 1 2 root@jkb:~# aptitude install openvpn root@jkb:~# ap ...