代码改变世界

随笔分类 -  [01].NET技术

一起谈.NET技术,Silverlight开发廋身攻略(二)

2011-09-02 00:19 by 狼人:-), 256 阅读, 收藏, 编辑
摘要: 继上一篇《Silverlight开发廋身攻略(一)》,在上一节中我主要介绍了在实际开发中怎么动态加载图片资源的方法,并附有实例。在这一节中主要给大家介绍MEF(Managed Extensibility Framework)的知识来实现Xap包的动态加载。 Managed Extensibility Framework(MEF)是.NET平台下的一个扩展性管理框架,它是一系列特性的集合,包括依赖注入(DI)以及Duck Typing等。MEF为开发人员提供了一个工具,让我们可以轻松的对应用程序进行扩展并且对已有的代码产生最小的影响,开发人员在开发过程中根据功能要求定义一些扩展点,之后扩... 阅读全文

一起谈.NET技术,Silverlight性能优化纪要

2011-09-02 00:19 by 狼人:-), 206 阅读, 收藏, 编辑
摘要: Silverlight作为微软为富网络应用所做的一个全新的架构,其优秀的表现力让开发者和用户感受到了强烈的冲击,无数的开发者为其着迷,同时微软的广大设计者也在不断地为其完善和充实,同时Silverlight团队也积极的构建Silverlight 5,其初步的版本已在 http://channel9.msdn.com/Series/Silverlight-Firestarter做了演示,从中你可以感受到Silverlight未来之路。我在学习了里面的性能优化的Event后,对这部分的介绍做了一个摘要,希望给大家简单的了解。 性能优化是一个逐步迭代的过程,在此过程中你需要做到以下的工作: ... 阅读全文

一起谈.NET技术,使用编码招式(Coding Katas)、BDD和VS2010项目模板

2011-09-02 00:19 by 狼人:-), 343 阅读, 收藏, 编辑
摘要: 通过编码招式和行为驱动开发,我受到了一些启迪,感觉良好。然而,当我意识到如果以后我就用这种方式编写单元测试、进行开发工作,那会相当痛苦,因为每次都要引入Eric Lee的ContextSpecification。如果我可以简单地选定一个BDD的单元测试项目,然后项目创建后我就拥有了所有项目所需的文件,那就容易多了。稍作查询之后,我找到了一些项目模板导出向导(Project Template Export Wizard)的参考资料,似乎这就是最适合我的解决方案。 为了能试试这个例子,你要从Visual Studio Gallery上下载并安装Export Template Wizard(... 阅读全文

一起谈.NET技术,StreamInsight 浅入浅出(六)—— Debugger

2011-09-02 00:19 by 狼人:-), 241 阅读, 收藏, 编辑
摘要: 对于 StreamInsight 系统,由于对事件的处理查询都是异步进行的,输入输出很难进行时序上的对应监测,所以普通的基于代码的 Debug 和 Watch 显得不那么有意义。于是微软随 StreamInsight 系统提供了一个好用的图形化调试工具 StreamInsight Event Flow Debugger。 这一工具的主要特点在于: 图形化界面,足够直观。有点类似 SQL Server 的查询计划界面,将一个复杂的查询拆分成多个基本查询,并以列表形式展现每个查询中事件的状态与取值。 支持跟踪、回溯,可以查看一个事件的初始状态以及演变过程。 支持即时调试,也支持日志... 阅读全文

一起谈.NET技术,C#数据本地存储方案之SQLite

2011-09-02 00:19 by 狼人:-), 333 阅读, 收藏, 编辑
摘要: 即使是做网络应用,在断线情况下,也需要考虑数据的本地存储。在SQLite出现之前,数据量大的情况下,我们一直使用ACCESS,数据量小,则文件存储。ACCESS不支持事务原子性,在断电情况下(这种情况总是会发生)会导致数据很难恢复。 一:安装 SQLITE,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统。我直接使用的是http://sqlite.phxsoftware.com/(An open source ADO.NET provider for the SQLite database engine)。下载完毕是一个EXE,安装后根目录如下: Bin下有一... 阅读全文

一起谈.NET技术,VS2010 调试利器

2011-09-02 00:19 by 狼人:-), 264 阅读, 收藏, 编辑
摘要: 一、通过VS2010可以将断点保存成本地文件(xml格式) 假设当代码中有CRUD(增、删、改、查)功能时,我们debug增加功能时在代码内设置了一个断点进行查错。再检查删除时又要为删除代码设置一个断点并且要清除上一个为debug增加功能时设置的断点。在VS2010之前我们似乎常常这样做,但现在通过VS2010我们可以将断点保存起来!其实也就是可以为所有断点设置一个解决方案。下次需要debug的时候直接导入先前导出的断点解决方案(xmL文件)。具体请参看下图: 鼠标停留的按钮就是导出功能键(VS2010->Debug->Windows->Breakpoints)右边就是导入断 阅读全文

一起谈.NET技术,VS2010实践RUP4+1架构模型

2011-09-02 00:19 by 狼人:-), 336 阅读, 收藏, 编辑
摘要: RUP4+1架构方法 RUP4+1架构方法采用用例驱动,在软件生命周期的各个阶段对软件进行建模,从不同视角对系统进行解读,从而形成统一软件过程架构描述. 图 1. RUP4+1架构图 用例视图(Use Cases View),最初称为场景视图,关注最终用户需求,为整个技术架构的上线文环境.通常用UML用例图和活动图描述。 逻辑视图(Logical view),主要整个系统的抽象结构表述主要关注系统提供最终用户的功能,不涉及具体的编译即输出和部署,通常在UML中用类图,交互图,时序图来表述,类似与我们采用OOA的对象模型。 开发视图(Development View), 描... 阅读全文

一起谈.NET技术,WPF企业内训全程实录(下)

2011-09-02 00:19 by 狼人:-), 220 阅读, 收藏, 编辑
摘要: 摘要 WPF企业内训全程实录由于文章比较长,所以一共拆分成了三篇,上篇WPF企业内训全程实录(上)主要讲了基础,中篇WPF企业内训全程实录(中)主要讲解开发模式、团队协作及应用框架,起着承上启下的作用,主要讲解开发模式、团队协作及应用框架。这篇作为该实录的下篇——终结篇,起着总结的作用,主要讲解其他技术的引用、WPF项目及性能优化、部署与更新等议题。 其实如果大家仔细看目录,可以发现我安排的顺序是首先讲解最基本的概念和基础内容、然后过渡到开发模式及框架、最后结合其他技术和项目实际运用,这也是学习并应用一门技术最好的流程。上篇实际上主要有两个侧重点:一则就是理清脉络——历史渊源、概念... 阅读全文

一起谈.NET技术,C# 枚举在项目中的应用总结

2011-09-02 00:19 by 狼人:-), 344 阅读, 收藏, 编辑
摘要: 本文主要是我在实际项目中对C#枚举的应用总结,如果存在不足的地方欢迎您指出。 一、枚举基本运用 1、枚举其实可以理解为一个恒量的结合,又或者可以认为它是一种类型。比如以下枚举定义: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> public enum MicrosoftTechnology { CSharp, ASPNETMVC, SQLServer, WCF, ... 阅读全文

一起谈.NET技术,体验ASP.NET MVC 3中的Razor特性

2011-09-02 00:19 by 狼人:-), 274 阅读, 收藏, 编辑
摘要: 1 闲话ASP.NET MVC 3beta 不知道不觉MVC3更新了好几次了。。。因为一直在弄Silverlight的开发没有时间关注ASP.NET MVC.之前出preview 的时候就看了园子里的一些文章。 但是总觉得"不咋地",依赖注入早就有一套了,全局拦截器也就那么回事。。好像都没有对开发效率有太大的提升。。。(一己之见.目前正在学习MVC3BEAT的DI)。 除了RAZOR... 好吧。 现在开始动手吧! 2开工 2.1目录 在_ViewStart.cshtml中指定 StartPage.Layout 会在程序启动时,预先加载这个页面。 C... 阅读全文

一起谈.NET技术,走向ASP.NET架构设计——第六章:服务层设计(中篇)

2011-09-02 00:19 by 狼人:-), 225 阅读, 收藏, 编辑
摘要: Façade设计模式 在SOA客户端的设计中,最常用的模式就是Façade模式了。Façade模式简化了复杂子系统的调用接口,也就说,Façade隐藏了子系统之间的复杂关系,给客户端一个简单的调用接口。 Façade模式的好处如下: 1.它可以使得第三方的类库经过包装之后,通过一个简单的接口就可以调用,如下图所示。 2.它可以通过抽象等方式来解耦其他系统之间的依赖。 3.它可以使得各个子系统之间的调用复杂度隐藏,通过一个简单的接口就可以调用,如下图所示 在上面的图中: 1.客户端调用Façade的一个简单的API来执行一个任务。客户端 阅读全文

一起谈.NET技术,.NET企业级架构解决方案:业务层

2011-09-02 00:19 by 狼人:-), 182 阅读, 收藏, 编辑
摘要: 引言 Martin Fowler说过:“任何人都可以写出计算机才能理解的代码,只有写出人能理解的代码的程序员才是好程序员。” 每一个复杂的软件都应该按层来组织。每一层代表系统的一个逻辑部件。尤其是,业务层的模块包括了所有使得系统运行的时候和其它层交互所需要的功能算法和计算,其他层包括数据访问层DAL和表现层。 业务层是任何分层系统的神经中心,包含了大部分的核心逻辑。因为这个原因,它也经常被叫做:业务逻辑层BLL。 正文 1、业务逻辑层是什么 抽象的讲,业务逻辑层是系统的一部分,用来处理和业务相关的任务。本质上,业务逻辑层包括一系列执行数据的操作。数据被模型化为问题域的实... 阅读全文

一起谈.NET技术,LightSwitch:小试一下微软开发框架LightSwitch

2011-09-02 00:19 by 狼人:-), 248 阅读, 收藏, 编辑
摘要: 之前知道微软在做一个数据驱动的开发框架LightSwitch,但没有用过。前一阵子,一个客户的技术负责人和我说起LightSwitch,所以这次TechNet也就去听了一下LightSwitch的讲座。回来后试用了一下,下面给大家简单介绍一下LigthSwitch。 安装 从官方网站下载,我机器本身装了VS2010,安装过程中会去下载一些文件,大概80M吧。 执行安装过程中我出现了一个问题,不知道你有没有。我的问题如下图,从提示看出是权限不够,所以我找到这个隐藏目录在【安全】页增加了Everyone,记住要给Everyone附上所有权限: 示例:订单 建表... 阅读全文

一起谈.NET技术,走向ASP.NET架构设计——第六章:服务层设计(前篇)

2011-09-02 00:19 by 狼人:-), 237 阅读, 收藏, 编辑
摘要: 本篇主要是为后文做铺垫,所以理论的东西相对而言比较的多一点! 服务层的概述 首先解释一下什么是”服务Service”,从广义来讲:只要是你使用了别人的东西,那么你就在使用别人提供的服务。在这里,服务就是指可能被一个或者多个系统使用的核心的业务逻辑,我们可以把服务简单的想象成为一些可供调用的API。 在之前的第四章中,我们讲述了如何组织业务逻辑,第五章讲述了在业务层的设计中可以采用的一些模式。但是还有一个问题需要大家考虑的是:如何把业务层提供给其他的层来调用? 可能认为这个问题有莫名奇妙—不是只要引用业务层的组件就行了吗。但是仔细想想,却不尽然:因为在很多系统中,我们不是直接... 阅读全文

一起谈.NET技术,提高效率 用好Visual Studio 2010自定义代码段

2011-09-02 00:19 by 狼人:-), 192 阅读, 收藏, 编辑
摘要: 我在演讲时发现这个功能也相当有用,不用现场敲代码,直接调出非常方便。Visual Studio 2010增强了自定义代码段功能,使创建自定义代码段的操作更加简单了。 有两种类型的代码段: ◆在游标中插入的Expansion自定义代码段 ◆围绕选定代码的SurroundsWith自定义代码段 创建自定义代码段 首先在项目中插入一个新的XML文件,取名为TryCatchFinally.snippet,注意文件名的后缀是.snippet,然后在编辑器窗口点击右键,选择“插入代码段”*“代码段”,创建一个基本的XML代码段模板,代码如下: Code highlighting... 阅读全文

一起谈.NET技术,用优秀.NET界面控件 打造新潮界面效果

2011-09-02 00:19 by 狼人:-), 284 阅读, 收藏, 编辑
摘要: 一直以来,做.NET共享小软件的界面一般采用IrisSkin这个比较不错的皮肤控件来美化界面效果,方便易用,界面效果也还可以。该控件开发应用比较方便,拖动控件到主界面,然后初始化地方添加一下代码即可: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->string skinFile = ConfigurationManager.AppSettings["SkinFile"];this.skinEngine1.SkinFile 阅读全文

一起谈.NET技术,不附加数据库 ASP.NET调用.sql文件

2011-09-02 00:19 by 狼人:-), 206 阅读, 收藏, 编辑
摘要: 笔者好久没有写随笔了,这次是遇到提出这样的问题“不用附加数据库,什么修改web.config什么的那么麻烦,而是直接运行一个页面,然后根据向导一步一步引导用户安装生成数据库”那么这样做就需要一个创建数据库的语句和创建这些数据库表的语句,还有这些创建数据库视图以及函数的语句。创建数据库语句好办, Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->"IF Not EXISTS (select name from master.dbo.sy 阅读全文

一起谈.NET技术,细数十大免费构建ASP.NET网站必备工具

2011-09-02 00:19 by 狼人:-), 229 阅读, 收藏, 编辑
摘要: 最近使用ASP.NET为公司构建了一个简单的公共网站(该网站的地址:http://superexpert.com/。在这个过程中,我们使用了数量很多的免费工具,如果把构建ASP.NET网站的必备工具总结一下,将会是一件十分有趣的事情。这些工具既支持ASP.NET Web Forms又支持ASP.NET MVC。 性能工具 读了两本关于网站的前端性能的书(这两本优秀的图书分别是:《High Performance Web Sites》 和 《Even Faster Web Sites》,作者是Steve Souders)以后,我对网站的前端性能十分敏感。根据Steve Souder... 阅读全文

一起谈.NET技术,讨论:“Mono是个跨平台的.NET”是否是个正确的说法

2011-09-02 00:19 by 狼人:-), 221 阅读, 收藏, 编辑
摘要: Thorbjorn在提问中认为Mono并不能称作是跨平台的.NET,理由如下: OpenJDK等Java提供商都通过了官方的Sun TCK来保证正常工作,Mono似乎并没有通过Microsoft TCK。 Mono的发布总是落后于.NET,那么目前它又对.NET支持到什么程度呢? 如WinForm等GUI工具是否可以在Mono下正常工作? 商业用户不会将开源框架作为备选方案。 用户sparkie首先回应了以上几点疑问: 首先,CLI(Common Language Infrastructure)和.NET是有区别的,前者是公开标准,而后者是微软对这一标准的实现,Mono则是CLI... 阅读全文

一起谈.NET技术,应用Visual Studio 2010辅助敏捷测试(上)

2011-09-02 00:19 by 狼人:-), 192 阅读, 收藏, 编辑
摘要: 敏捷软件开发是近些年来比较热门的话题,《敏捷宣言》四条主要精神和十二条基本准则概括了敏捷开发的基本思想。围绕着这些基本概念和思想,产生了一系列的轻量级方法,如:极限编程、测试驱动开发、Scrum、特性驱动开发等。虽然具体名称、过程和侧重点不尽相同,但是相对于非敏捷的开发方法而言,它们都更强调面对面的沟通、团队不同角色之间的紧密协作、频繁交付新的可用的软件版本、紧凑而自我组织型的团队等。敏捷开发只是提供了一个思想和方法论,而要在实际的工程中正确运用它,并真正显现出它的优点和产生实际的效果,这对于每个团队而言一开始都是一个挑战,尤其是对那些那些习惯了传统瀑布模式的团队。 敏捷是整个团队的敏... 阅读全文
上一页 1 2 3 4 5 6 7 8 9 10 ··· 56 下一页