arm-linux mono移植,移植Windows自宿主WCF服务到Linux/Mono2.8

后台服务在Unix/

可以操作的状态:

start             启动服务,等价于服务脚本里的start命令

stop             停止服务,等价于副外长脚本stop命令

restart          关闭服务,然后重新启动,等价于脚本restart命令

reload          使服不重新启动而重读配置文件,等价与服务脚本的reload命令

status           提供服务的当前状态,等价于服务脚本的status命令

condrestart  如果服务锁定,则这个来关闭服务,然后再次启动,等价于condrestart命令

Mono 下的Windows服务叫做mono-service,mono-service 运行.net 1.0 程序集 和用 mono-service2 运行.net  2.0 以上的程序集。mono 2.8已经不支持.net 1的程序了,所以我们现在都是使用mono-service2,命令行说明文档参考http://manpages.ubuntu.com/manpages/lucid/man1/mono-service.1.html。

Mono 2.8对wcf的支持也比较好了,这里的例子就是将Windows下self host的一个wcf服务移植到Linux上。

1、在Window下编写一个WCF 服务端作为Window服务。我们服务的代码结构如下

2011072113415735.png

要将.NET程序移植到Mono,我们一般会使用net 应用迁移到Mono 工具 (Moma)检查下兼容性。下面这个项目的检查结果,看看是不是Mono2.8完美支持WCF。

2011072113415737.png

DynIPServiceWS是WCF的windows服务的宿主,我们把代码放到Linux下使用MonoDevelop编译.放到/home/geffzhang/Projects/DynIPServiceWS目录下,切换到这个目录,执行命令

mono-service DynIPServiceWS.exe

运行DynIPClient.exe,返回运行结果说明服务已经在运行,如果客户端出现目标机器积极拒绝说明服务没有启动。

mono DynIPClient.exe。

关于Mono下的WCF的可以参考这个博客,作者写了一个系列的文章:http://veritas-vos-liberabit.com/monogatari/

本文的例子下载:office.live.com/self.aspx/.Public/WCF/DynIPUpdater%5E_0.1.zip">http://cid-33478a966734670f.office.live.com/self.aspx/.Public/WCF/DynIPUpdater%5E_0.1.zip

目前还有一个问题没有解决,就是如何把mono-service包装成Linux的Daemon,留待后续补充,欢迎有做好的同学共享下怎么做?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值