基于 Silverlight的快速开发框架RapidSL新版改进源码

     重写了核心框架和UI逻辑,对sl传统的开发方式进行了集成和封装,核心模块基于MVVM,通用的CRUD ViewModel,只需要定制自己的Xaml View,提供了非常便捷的快速开发方式; 采用了Silverlight 5.0 + EF4.1 Code First + Ria Service SP2 + Ria Service Toolkit + Silverlight Control Toolkit + Light MVVM;已经实现了轻量级的权限管理,上传模块,内容管理,作为实例,涉及到了sl开发的各种技术难点和技巧,既可以作为学习,也可以作为项目开发的原型;RapidSL框架主攻快速开发领域,力求做到LightSwitch,而EasySL主要是容易和传统的三层架构进行无缝整合,在定制化的特定项目中运用

 

 

环境配置

  • EF 4.1 和 Ria Service SP2已经对Code First/DBContext已经提供支持,请参考 http://jeffhandley.com/archive/2011/06/30/RIAServicesCodeFirst.aspx
  • 需要安装Silverlight 5 Tools for Visual Studio 2010 SP1,EF 4.1,Silverlight 5 Toolkit,WCF RIA Services 1.0 SP2,WCF RIA Services Toolkit
  • 需要配置是web.config里的connectionStrings的sqlserver2008地址,默认 为.\SQLEXPRESS;

 

 

源码分享

 

 

整个解决方案

 

后端EF相关项目和SL项目分离,体统通用的处理类和控件以及对如枚举转换,资源注入,各种Converter的核心支持。

 

 

对MVVM的支持


使用了Light MVVM作为原型驱动,EditableViewModel提供对CURD的统一处理

 

 

 

对Enum的支持

 

将枚举转化成Dictionary<int, string>, key为枚举值,value为上面的DescriptionAttribute的值
并提供相应的Converter,这些都只需要泛型继承

 

 

 

对Resource的支持

 

找到所有标识有StaticResourceAttribute的类,然后创建相关实例,并注入到Application.Resources,相当于在App.xaml里手写资源 

 

 

 

对权限的支持

 

 

 

对控件的支持  

 

 

 

主题美观

 

 

内置Metro和Green两套主题 ,可参考 http://blogs.msdn.com/b/esthetique/archive/2010/08/19/introducing-the-new-silverlight-4-themes.aspx

 

 

 

截图分享

 

 


posted on 2012-06-26 17:38  guozili  阅读(7877)  评论(33编辑  收藏  举报