摘要:1.什么是委托,为什么要使用委托 我正在埋头苦写程序,突然想喝水,但是又不想自己去掉杯水而打断自己的思路,于是我就想让女朋友去给我倒水。她去给我倒水,首先我得让她知道我想让她干什么,通知她之后我可以继续写自己的程序,而倒水的工作就交给了她。这样的过程就相当于一个委托。 在程序过程中,当程序正在处理某个事件的时候,我需要另外的程序代码去辅助处理一些事情,于是委托另一个程序模块去处理,而委托就可以达到这种目的,我可以利用委托通知另外的程序模块,该去调用哪个函数方法。委托其实就起到了这样一个作用,将函数签名传递到了另一个函数中。或许这样讲还是有些模糊,看看后面的具体实例。 2.委... 阅读全文
一起谈.NET技术,概括ADO.NET数据库连接的所有形式(基础)
2011-09-01 23:45 by 狼人:-), 202 阅读, 0 推荐, 收藏,
摘要:你可能熟悉其中部分数据库读取的形式,但是熟悉全部的估计很少,或者你完全忘记了,因为这些形式被封装到你自己框架的底层,自己搞过一两次就在也没有动手写过了。但是笔者觉得这部分知识是应该牢固掌握的,这个是基础。
第一种:通过直接在cs文件中编写查询语句调用dbcom.ExecuteNonQuery();执行插入数据 1 //连接字符串 2 string ConnectionString = ConfigurationManager.ConnectionStrings["db_Test01ConnectionString"].ConnectionString; 3 string P 阅读全文
一起谈.NET技术,Silverlight中自定义控件
2011-09-01 23:45 by 狼人:-), 172 阅读, 0 推荐, 收藏,
摘要:自定义控件并不是一项多么难的技术,关于自定义控件这部分有不少文章讲的很透彻,这里我主要把自己练习自定义控件的过程记录下来。 这里我以自定义控件BusyPointer为例,首先我们新建一个应用程序,命名为CustomControl,这里我们将自定义控件放入单独的项目中,所以在解决方案里添加一个Silverlight Class Library项目,命名为BusyPointer,现在我们把Class1.cs类删除,然后在BusyPointer项目中添加一个Silverlight Template Control,我们为之命名为BusyPoint,这时架构如下图所示,项目中增加了一个类文件,... 阅读全文
一起谈.NET技术,CSS十八条技总结
2011-09-01 23:45 by 狼人:-), 165 阅读, 0 推荐, 收藏,
摘要:一、使用css缩写 使用缩写可以帮助减少你CSS文件的大小,更加容易阅读。css缩写的主要规则请参看《常用css缩写语法总结》,这里就不展开描述。 二、明确定义单位,除非值为0 忘记定义尺寸的单位是CSS新手普遍的错误。在HTML中你可以只写width="100",但是在CSS中,你必须给一个准确的单位,比如:width:100px width:100em。只有两个例外情况可以不定义单位:行高和0值。除此以外,其他值都必须紧跟单位,注意,不要在数值和单位之间加空格。 三、区分大小写 当在XHTML中使用CSS,CSS里定义的元素名称是区分大小写的。为了避免这种错误,我建.. 阅读全文
一起谈.NET技术,Silverlight发布时的优化工作(下)
2011-09-01 23:45 by 狼人:-), 124 阅读, 0 推荐, 收藏,
摘要:相关文章:Silverlight发布时的优化工作(上) 一、 项目资源优化 资源在silverlight中存在形式: Resource —— 资源会被打包在程序集内部 Content——资源会被打包在Xap包里面 None——资源既不会被集成到程序集内,也不会打包到xap包中。不过我们可以通过设置CopyToOutputDirectory选项让其自动拷贝到xap包所在目录。 Resource和Content两种缺点是造成xap包很大,一次性下载到客户端比较慢。None能生成最小的xap包,资源通过IIS使用URI作为文件下载访问,第一次加载到silverlight缓... 阅读全文
一起谈.NET技术,Silverlight发布时的优化工作(上)
2011-09-01 23:45 by 狼人:-), 151 阅读, 0 推荐, 收藏,
摘要:最近做开发时,silverlight的xap越来越大,如果不进行优化严重影响到客户端的体验,因此看了一些资料,总结一下。 一、XAP包是可分解的 Silverlight应用最终是借助于http协议以web形式到达客户端的,我们编写的silverlight包,就是xap,其实是一个压缩包,包含了许多个控件及资源,可以通过更改后缀为ZIP,通过右键打开一探究竟。 更改后缀后再使用压缩软件打开后发现。 了解这个基本知识后呢,就可以从分解这个xap包开始了进行优化工作了,这里的优化工作分为两部分: silverlight客户端缓存验证 silverlight本身的DLL... 阅读全文
一起谈.NET技术,维护LINQ to SQL多对多表间关系
2011-09-01 23:45 by 狼人:-), 374 阅读, 0 推荐, 收藏,
摘要:在项目开发中,经常会碰到维护多对多(many to many)关系表间关系的操作,例如为人员配置角色、为人员配置部门、为产品配置类别等。如果没有经过程序设计而直接进行开发,将会过多地关注其细节问题,如:应删除那些数据、应添加哪些数据、应保留哪些数据等,导致开发效率降低。 名词解释
在本文开始之前,首先以用户-用户角色-角色表为例,声明三个概念: l 主表:如果为用户配置角色,那么用户就是主表;如果为角色配置用户,那么角色就是主表。
l 从表:如果为用户配置角色,那么角色就是从表。
l 关系表:记录用户与角色表间关系的表。 行为描述
经过总结,发现其行为有统一的地方:传递主表对象与从表... 阅读全文
一起谈.NET技术,IoC+AOP的简单实现
2011-09-01 23:45 by 狼人:-), 763 阅读, 0 推荐, 收藏,
摘要:对EnterLib有所了解的人应该知道,其中有一个名叫Policy Injection的AOP框架;而整个EnterLib完全建立在另一个叫作Unity的底层框架之上,我们可以将Unity看成是一个IoC的框架。对于一个企业应用来说说,AOP和IoC是我们进行逻辑分离和降低耦合度最主要的方式,而将两者结合起来具有重要的现实意义。 一、基于IoC+AOP的编程 到底将IoC和AOP进行整合后,会对编程但来怎样的影响,我写了一个简单的例子(你可以从这里下载该实例)。假设我现在有两个模块,分别称为Foo和Bar,通过如下同名的类来表示。Foo和Bar具有各自的接口,分别为IFoo和IBa... 阅读全文
一起谈.NET技术,使用 Silverlight Media Framework 构建自定义播放器
2011-09-01 23:45 by 狼人:-), 263 阅读, 0 推荐, 收藏,
摘要:流媒体已在网络上无处不在。似乎所有人(从新闻站点到社交网络再到隔壁的邻居)都在享受在线视频体验。由于用户群的不断攀升,大多数站点需要以一种值得信赖、用户友好的方式为其客户提供高品质视频,通常为高品质带宽感知 视频。 在线媒体传输体验的核心要素是播放器本身。播放器是用户与之发生交互的介质,它可以驱使用户获得在线体验的每一个要素。播放器如此备受关注,毫无疑问,基于 Web 的现代媒体播放器在实现时势必要比几年前的老款播放器复杂得多。因此,开发人员需要一个稳健的框架来构建播放器。 Silverlight Media Framework (SMF)是一个开源项目,由 Microsoft 在 20... 阅读全文
一起谈.NET技术,保护您的 Silverlight 应用程序的安全
2011-09-01 23:45 by 狼人:-), 168 阅读, 0 推荐, 收藏,
摘要:作为一名 Microsoft 服务顾问,我定期与客户和合作伙伴一起进行应用程序安全性讨论。 在本文中,我将介绍一些在这些讨论中提出的主题。 特别是,我将重点介绍编程人员在尝试保护 Silverlight 应用程序的安全时所面临的新挑战,而且我将考虑开发团队应该将其资源集中于哪些方面。 本文提到了许多技术概念,您可以在其他位置(包括本杂志)找到这些概念的更多详细信息。 因此,我就不在技术层面更加深入地讨论这些主题。 本文的目标是“理清头绪”并介绍如何利用这些概念保护您的应用程序的安全。 当规划应用程序的安全性时,考虑三个 A 非常有用:身份验证 (Authentication)、授权 (... 阅读全文
一起谈.NET技术,Entity Framework 缓存处理与日志监控
2011-09-01 23:45 by 狼人:-), 450 阅读, 0 推荐, 收藏,
摘要:在Kooboo中使用了Entity Framework作为持久化框架,但由于EF1.0并没有提供完整缓存解决方案,一直以来都在为数据缓存而烦脑,在没有找到合适解决方案的情况下,采取了临时的解决办法:直接缓存实体。但是由于Entity实体都是带状态的,并且都与ObjectContext有间接的反向引用,缓存带状态的实体,会造成对象上下文混乱和连接资源的无法被正确释放。因此缓存的Entity实体,首先必须被分离或者重新定义POCO实体来代替Entity实体作为缓存对象。这样一来,所有的缓存实体的关联关系都会失效,造成使用上的麻烦和整个软件框架存在严重的不足。 再说说EF的SQL日志问题。在... 阅读全文
一起谈.NET技术,ASP.NET MVC 通过 FileResult 向浏览器发送文件
2011-09-01 23:44 by 狼人:-), 360 阅读, 0 推荐, 收藏,
摘要:在 Controller 中我们可以使用 FileResult 向客户端发送文件。 FileResult FileResult 是一个抽象类,继承自 ActionResult。在 System.Web.Mvc.dll 中,它有如上三个子类,分别以不同的方式向客户端发送文件。 在实际使用中我们通常不需要直接实例化一个 FileResult 的子类,因为 Controller 类已经提供了六个 File 方法来简化我们的操作:
protected internal FilePathResult File(string fileName, string contentType);pr... 阅读全文
一起谈.NET技术,利用Response.Flush和iframe实现”服务器推”技术
2011-09-01 23:44 by 狼人:-), 253 阅读, 0 推荐, 收藏,
摘要:基于流方式的”服务器推”模型: 服务端在接到客户端的请求时,通过Response的Flush()方法发送数据,可以使用定时器的方式发送数据,没有数据也发送”无数据”,让客户端保持长连接,直至客户端断开连接,请求结束。每次数据传送不会关闭连接,连接只会在通信出现错误时,或是连接重建时关闭(一些防火墙常被设置为丢弃过长的连接, 服务器端可以设置一个超时时间, 超时后通知客户端重新建立连接,并关闭原来的连接)。 实现代码: 页面Default.aspx,用来展示数据: Code highlighting produced by Actipro CodeHighlighter (... 阅读全文
一起谈.NET技术,MonoTouch中的MVC简介
2011-09-01 23:44 by 狼人:-), 198 阅读, 0 推荐, 收藏,
摘要:在这篇文章中,我们将要创建另外一个简单的应用程序,不过这次要学习下如何使用Views(视图)和View Controllers(视图控制器)来创建一个具有多个界面的应用程序。特别地,我们将使用UINavigationController来在应用程序里的两个界面间进行导航。 在开始构建应用程序之前,让我们简单熟悉下iPhone应用程序所用的这个重要设计模式。 模型-视图-控制器(MVC)模式 Cocoa Touch使用了一种修改版本的MVC模式来处理GUI的显示。MVC模式(自1979年以来)已经出现很长时间了,它皆在分离显示用户界面所需的大量任务,并处理用户交互。
正如名称所蕴... 阅读全文
一起谈.NET技术,模拟IIS向Silverlight输出策略文件
2011-09-01 23:44 by 狼人:-), 189 阅读, 0 推荐, 收藏,
摘要:问题 最近的Silverlight开发中,由于部分需求对实时性和数据量下载速度有要求,部分WCF服务配置成了netTcpBinding,这种方式跟普通的service.svc寄宿IIS不同的是,Silverlight需要的策略文件需要放置在本机IIS的根下,也就是wwwroot文件夹下,以满足Silverlight在以TCP协议调用本机WCF服务时请求策略文件。(注:Silverlight通过TCP协议调用WCF服务时,会以http方式请求主机的一个策略文件,地址是http://localhost/clientaccesspolicy.xml) 这其实是个不太好的选择,程序运行的所... 阅读全文
浙公网安备 33010602011771号