最近学习Silverlight,感觉做出来的效果自然是很炫,但要真正使用到实际项目中,要学习的东西还是很多的。整理了一下,按照常规的层次结果,如下所示:

界面层:主要是学习Silverlight基础,包括Silverlight控件的使用、Toolkit扩展控件的使用、xaml语言(布局、动画、通信、视频、图像、交互)、Style尤为强大,需要多花时间。

另外界面层架构,

1、Prism根据用户需要动态加载功能模块,大大降低了模块之间的耦合,同时由于是动态加载,缩短了页面加载的时间,减少了用户等待时间,给用户带来更好的体验;

2、MVVM即Model、View、ViewModel三层,ViewModel有一个很明显的优点:可降低View与Control的耦合;

3、MEF即Managed Extensibility Framework是.NET平台下的一个扩展性管理框架,它是一系列特性的集合,包括依赖注入(DI)以及Duck Typing等。个人感觉跟Prism有些类似,都是动态加载,MEF使用了反射机制,可动态加载动态链接库,而Prism是动态加载功能模块View;另外,MEF是VS2010自身的东西,而Prism需要引用另外的动态链接库,但我感觉还是Prism好用,可能是我对MEF还没理解透彻。

总之,界面层,使用Prism与MVVM是最完美结合,各功能模块相互独立,各模块自身都使用MVVM模式,各模块通过Prism动态加载。

访问数据库与业务逻辑处理:

1、传统数据访问层与WCF结合的方式。

使用Command方式访问数据库,BaseDAL提供数据库访问的基本方法,BDU层提供数据实体层,为了与界面层的模块无耦合相对应,这里针对每个模块分别建立DAL层与BLL层,然后通过控制台程序宿主每个WCF服务,使用net.tcp协议较http协议大大提高了访问速度,所以建议WCF Services使用net.tcp协议提供服务。

2、WCF RIA Services方式。

WCF RIA Services简化了N层结构的RIA应用程序的开发。当开发一个N层结构的RIA应用程序时,一个通常的问题就是在中间层和表现层之间协调应用逻辑。RIA服务提供框架组件、工具以及服务来使RIA客户端不用手动复制程序逻辑就能调用位于服务器上的应用逻辑。你所建立的RIA客户端不仅能够了解商业逻辑,而且当每次解决方案编译时会自动更新中间层逻辑。(此段为摘抄内容)

WCF RIA Services方式提供数据库访问与业务逻辑处理,主要优点有:

1)构建应用程序效率高;

2)安全性好、性能高;

缺点有:

1)可扩展性差,通过ADO.NET Entity Data Model,你只需要钩钩选选即可自动生成数据库访问方法(增、改、删、查)。很奇怪,微软竟说WCF RIA Services可扩展性好,不明白。

2)数据库兼容性差。目前只支持SQL Server数据库,(微软已经把System.Data.OracleClient从.net framework 4.0中删除,其唯我独尊的野性可见一斑),不过CoreLib提供了访问其他数据库(包括Oracle)的收费插件。

Silverlight学习时间还不是太长,随着学习和应用的深入,以上内容可能会更新,敬请关注。

Silverlight框架相关推荐

  1. Silverlight 框架

    Silverlight 框架 刚开始接触Silverlight就有幸看到guozili 关于"基于Silverlight的精简框架"的博文,不但言简意赅,而且实现的效果也是夺目三分 ...

  2. 【学习笔记】Silverlight框架:Jounce(4)——事件通信

    Prism.CM和Jounce里都有各自的事件通信机制,也都叫EventAggregator. 相比于Prism,Jounce里的EventAggregator的风格更接近CM.当然作者也是这么说的: ...

  3. Silverlight入门:第三部分 - 数据访问

    现在我们已经有了一个基础布局,同时也在上面放了一些控件,接下来让我 们开始获取数据.因为我们想要搜索Twitter上的内容,所以我们需要充分使用 他们提供的Web服务API.在继续之前,我要先说明在本 ...

  4. Silverlight测试——利用Ranorex实现数据驱动测试

    最近这段时间一直很忙, 上次关于Jacklin提出WindowsPhone 7访问本地DataBase在XAP包无法操作问题. 我正在WP7上测试利用开源数据库DB4O和SiaqoDB方式来解决这个问 ...

  5. 分享Silverlight/WPF/Windows Phone一周学习导读(07月25日-07月31日)

    上周,微软发布Visual Studio LightSwitch 2011正式版,为商业应用开发人员推出一个新的应用开发产品.Visual Studio LightSwitch 2011 作为一种简单 ...

  6. 在企业中使用的Silverlight:RAD数据通信用户友好的数据库访问

    最近在学习Silverlight,在网上搜了一把Silverlight开源项目,结果很少,顶多就是银光网上有那么点资料,EasySL开源框架也是不错的. 于是打开CodeProject上面浏览看到了相 ...

  7. Silverlight MMORPG网页游戏开发课程[一期] 第九课:HUD与背景音乐

    引言 征服玩家的不仅仅是创意,无比动人的视觉体验譬如精美的界面UI同样能让人倾慕,辅以优柔的旋律仿若一缕思绪让您身临其境而流连.深刻的第一印象无限大的冲击着玩家那份内敛的狂热,优秀的游戏作品价值将在欢 ...

  8. .NET、C#与Silverlight开发圣典——分享15位MVP的最佳实践经验

    <.NET.C#与Silverlight开发圣典--分享15位MVP的最佳实践经验> 基本信息 原书名:Real World .NET 4, C#, and Silverlight:lnd ...

  9. 分享Silverlight/WPF/Windows Phone一周学习导读(11月21日-11月27日)

    分享Silverlight/WPF/Windows Phone一周学习导读(11月21日-11月27日) 本周Silverlight学习资源更新 Silverlight 利用Telerik导出到Wor ...

最新文章

  1. Flink状态后端配置(设置State Backend)
  2. 课程作业1:字符型强制转化为整型
  3. Java第一个程序Helloworld
  4. jvm对于java的意义_谈谈对JVM的理解
  5. IOC操作Bean管理XML方式(注入内部 bean 和 级联赋值)
  6. Windows 10 May 2020 中 WSL 与 WSL2 的性能比较
  7. 【PHP 开发】mac 在 PHP 环境安装 mcrypt 扩展的方法
  8. 【C/C++】通过无类型指针实现泛型拷贝(内存拷贝)
  9. 检查字段是否包含字符串
  10. Swing组件集合的事件处理(三)
  11. 工具-python实现电影字幕的自动翻译
  12. HEU KMS ActivatorV7.8.6迷你版 激活工具使用
  13. 新浪微博平台架构(转)
  14. 【错误记录】python不常用的一个小操作:安装pip
  15. 有赞前端SP毁约后的日子
  16. sigma-delta_Delta调试-简化失败的测试用例
  17. 用docker在linux上安装qq和微信
  18. 图书信息管理系统c语言txt,小型图书信息管理系统(C语言)
  19. 计算机答疑在线,基于web的在线答疑系统设计
  20. 手机视频直播系统开发关于Js敏感词替换成*功能介绍

热门文章

  1. JSP cookie详解
  2. 7. 无线体内纳米网:改善体内电磁通道信号传播性能的若干新型石墨烯材料
  3. 页面跳转问题presentViewController
  4. 2022最新找茬小程序完美运营版源码
  5. 不做不明真相的开发者 之驱动与中断
  6. 以太坊天价手续费转账真相:资金盘项目GoodCycle上演误杀瞒天记!
  7. 好几天忘记笑了~2012年9月10日
  8. 中国数据科学家年薪有多少?
  9. 计算机系统的备份与还原实验报告,数据备份与数据恢复实验报告
  10. 何海涛算法面试题感悟之五:查找最…