摘要:光学不练,对一些概念的理解就只能停留在表面了。这个系列主要记录自己对Jounce框架的理解和测试代码,以加深对MVVM和Silverlight的一些概念的理解。本例主要测试Jounce框架中View和ViewModel的通信。MVVM的优点我认为Model、View和ViewModel的设计原则:模型、视图和视图模型分离,主要有两方面的优点:1. 便于团队协作和单元测试。开发人员开发出适合业务逻辑的Model和ViewModel,并在没有View的情况下就可以做单元测试;美工人员根据ViewModel设计好View;测试人员可以只根据View、ViewModel或者Model其中之一的情况下写 阅读全文
[Silverlight]MVVM+MEF框架Jounce学习(2):标记和绑定
2012-11-29 10:09 by slmk, 1744 阅读, 1 推荐, 收藏, 编辑
摘要:这一部分主要讲解如何绑定View和View Model。IApplicationService接口Jounce实现了 IApplicationService接口,作为一个服务插入到Silverlight应用程序的生命周期。这样,Jounce就有机会在silverlight应用程序开始、结束或者出现未处理的异常时,接管程序的执行。使用Jounce框架的应用程序,App.xaml必须这样定义:<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x=&quo 阅读全文
[Silverlight]MVVM+MEF框架Jounce学习(1):Why?
2012-11-27 15:38 by slmk, 1927 阅读, 2 推荐, 收藏, 编辑
摘要:英文原文:http://csharperimage.jeremylikness.com/2010/10/jounce-part-1-why.html【译者注:因为我英文不好,并且懒,所以我不会原文一字不差的翻译原文,只图达意吧。实在看不下去的对照英文吧:)】Jounce是一个利用MEF和MVVM创建Silverlight应用程序的框架。起因我用Silverlight开发企业应用,是从2.0开始。有些应用需要很强的可扩展性,需要方便的添加视图和模块。有时需要很强的模块化,例如动态加载和压缩dll到客户浏览器。我发现MVVM和MEF是很好的工具,可以方便做单元测试和团队分工合作。我发现每次都从头创 阅读全文
Silverlight 应用程序中未处理的错误 代码:2110 类别: InitializeError
2012-11-26 17:40 by slmk, 2260 阅读, 1 推荐, 收藏, 编辑
摘要:最近老是遇到莫名其妙的错误,今天碰见了这个错误:重新编译,重启机器,清除缓存,还是报错?同样没有详细的错误提示,调试只能得到:google没有解决方法。只好重建一个干净的工程,运行没问题,说明环境正常。一点点移植代码,添加引用时发现有一个dll只要添加上就出错,汗,终于定位到错误了。看看这个dll有何不同呢?查看工程属性,发现此dll的平台是x86,而其他的都是Any CPU。统一改成Any CPU后,清除浏览器缓存,重新编译,运行,问题解决。 阅读全文
【SIlverlight】分享一套企业开发主题
2012-11-25 09:57 by slmk, 2095 阅读, 3 推荐, 收藏, 编辑
摘要:Silverlight默认主题时间长了,也视觉疲劳了,于是上网上找了下Silverlight主题。发现SL的主题并不多,下面这套JetPack主题还是SL4时代发布的,不过SL5也能用。用于企业开发还不错,谁有更好的,也告诉我:)下载和安装下载地址:http://www.microsoft.com/downloads/en/details.aspx?FamilyID=e9da0eb8-f31b-4490-85b8-92c2f807df9e&displaylang=en这个包里其实包含4套主题,我还是觉得这个比较专业。安装下面的JetPack.vsix:就增加了一个项目模板:使用查看模板 阅读全文
Web开发异常排查的常用方法
2012-11-23 08:54 by slmk, 1949 阅读, 2 推荐, 收藏, 编辑
摘要:异常出现平常程序遇到错误,开发环境下一般都用调试搞定,生产环境下通过查看日志搞定。但也有搞不定的时候,这是我在Silverlight开发时遇到的的错误:如果启用调试,"对不起,程序已经崩溃,无法附加到进程"。怎么办?提示信息太少,盲目怀疑程序哪里写的不对,只会使问题变得更糟,拖延了解决问题的时间。 异常排查此时我们应该查看是哪一个请求引起的错误,方法就是使用浏览器的开发者工具:IE8以上按f12,chrome按下ctrl+shift+I,转到“网路”,开始捕捉:这里我们得到的是一个500错误,知道了是请求.svc时出错了。双击查看响应正文或者直接复制请求url到浏览器访问可 阅读全文
Silverlight LoaderException错误
2012-11-22 11:07 by slmk, 300 阅读, 0 推荐, 收藏, 编辑
摘要:遇到这个错误一般是在SilverLight版本切换的时候,例如由4.0切换到5.0,调试时报”无法加载某某dll“,显示的此dll的版本还是4.0的。这时需要清理一下解决方案,停止自带的Web服务器,再重新运行。 阅读全文
Silverlight清单配置错误:InitializeError 2103
2012-11-22 08:33 by slmk, 2422 阅读, 0 推荐, 收藏, 编辑
摘要:出现原因今天试图将Silverlight程序进入点设为引用的类库里面的App.xaml,结果发现行不通,出现如下错误:SCRIPT5022: Silverlight 应用程序中未处理的错误 代码: 2103 类别: InitializeError 消息: 应用程序无效或格式不正确: 请查看清单所谓的“程序清单”是指:AppManifest.xaml。位于项目的properties文件夹下有此文件的模板。一般出现此错误的原因是Silverlight找不到入口点了,就像C程序找不到main函数了。结论App.xaml只能设为主应用程序的,不能设为类库的。准确的说应该是VS 201... 阅读全文
Silverlight 如何手动打包xap
2012-11-21 15:09 by slmk, 1187 阅读, 0 推荐, 收藏, 编辑
摘要:平时用VS开发Silverlight时,VS会自动为我们打包成xap,如果有不想打包的dll,就把dll属性改为“复制本地=false”。XAP实际是一个压缩包,用winrar或者7zip都可以解压,解压后可以看到里面包含的dll等。有时我们可能要动态加载xap,而xap中的有些dll是重复的,我们不想要。如何修改并手动重新打包成xap呢?还是用winrar或者7zip,这里要压缩成zip格式,并且所有的文件都要位于根目录下。有时可能偷懒,直接在解压出的文件夹上右键压缩了,结果silverlight不认了。 阅读全文
Chrome插件开发中文问题解决方法
2012-11-20 16:36 by slmk, 559 阅读, 0 推荐, 收藏, 编辑
摘要:有时你仔细检查了代码,却还是找不出为什么不能正确执行的原因。那可能是因为你的js文件中包含了中文,而这个js文件又是Asci编码保存的。解决方法很简单:用记事本打开,然后保存为Utf-8编码。 阅读全文