分享一個Metro風格的程序


目錄

前言

環境

項目結構

總結

 

前沿

最近在學微軟的RX,這個基於異步和事件的類庫。RX是由Observables+Linq+Schedulers 組成。它的優勢在於處理I/O操作的時候,能夠很好的處理異步操作。

於是出於練習,做了一個進銷存系統,至於為什么選進銷存系統。因為前段時間博客園里的園友都分享了一些進銷存的開源軟件。微笑

 

環境

這個系統運用了 Autofac,Caliburn.micro,RXUI,NHibernate。用了Autofac來管理我的程序的生命周期(這邊占時簡單的運用了)。Caliburn.micro 管理ViewModel和View,主要是它的Screen Activation Lifecycle的思想概念很好。因為這個系統是基於WPF開發的我用了RXUI這個框架,它能夠很好的和MVVM模式結合,RXUI和Caliburn.Micro各自都有做對INotifyPropertyChanged變化的實現。這邊兩個一起用了 有點沖突了。NHibernate用來操作數據了。

 

項目結構

1、框架結構

QQ截圖20120915103500

Commom放了一些常用的類,這里面實體屬性的INotifyPropertyChanged通過AOP來附加上去。Validate通過附加屬性和ViewModel邏輯判斷來驗證,使實體符合POCO,Model放Nhibernate實體對象和Mapping,Repositories負責對Nhibernate的數據進行的操作,Services是一些接口文件。

2、AppBootstrapper

AppBootstrapper負責Register和Resolve對象的地方。其中Confirgure方法里負責注冊對象。LoginSuccess成功之后加載對應權限的模塊。這里把注冊和登錄操作同時進行了。考慮到了Nhibernate配置有點慢。

3、登錄界面

QQ截圖20120914224030

默認管理員是Admin密碼為空。

4、Home

QQ截圖20120914224113

 

Home相當於Conductor,每個模塊就是一個Screen。

總結

在這個系統中RXUI用的比較多。對RX比較感興趣的的園友們可以一起討論下。我想在Win8及以后的系統中,RX的發展空間還是挺大的。還有其他頁面看源碼這里吧。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM