2009年8月17日
摘要:
代振军同学的blog中描述了使用DataPager实现客户端分页:http://www.cnblogs.com/daizhj/archive/2009/08/07/1529331.html一般说来,在项目中一般很少使用这种客户端的分页方式,除非数据量很少(干脆不分页算了)。把大量的数据一次性传输到客户端可不是个明智的做法,我们一般都是从客户端传入查找条件参数(包括过滤条件和分页条件参数),然后服务...
阅读全文
posted @ 2009-08-17 15:15
小庄
阅读(6336)
推荐(5)
2009年7月22日
摘要:
有点标题党了,最近因工作需要,想利用WCF的Duplex服务向Winform程序推送消息,写了个示例,主要参考了artech的相关文章和其他一些利用WCF向SilverLight客户端推送消息的文章。
先看运行效果:在网页中发送消息,Winform端接收到消息
阅读全文
posted @ 2009-07-22 16:42
小庄
阅读(6588)
推荐(6)
2008年12月24日
摘要:
感觉SilverLight的编程方式更像WinForm一点,要是有WinForm中的Show方法和ShowDialog方法就可以更灵活的操作窗口了,这次我们就来给SilverLight的UserControl增加这两个方法:分别是Show() and ShowAsModal()。
基本原理是写个UserControl的基类BaseUserControl,在基类中实现这两个方法,需要弹出的UserControl继承这个基类就可以了,具体这两个方法的实现方式是利用SilverLight的PopUp对象。
阅读全文
posted @ 2008-12-24 12:02
小庄
阅读(7744)
推荐(0)
2008年12月5日
摘要:
SilverlightValidator提供了如下验证控件:
1.RequiredValidator:非空验证
2.LengthValidator:长度验证
3.PhoneValidator:电话号码验证,可以在PhoneValidator类构造函数中修改验
证正则表达式来实现自定义的验证规则。
4.RangeValidator:范围验证,例如验证年龄的范围。
5.RegexValidator:正则表达式验证,验证是否符合指定的表达式。
6.SSNValidator:美国社会安全号验证,其实这个是继承RegexValidator实现的
,我用不上,把它改成了身份证号码验证。
7.还提供了一个过滤器:TextBoxFilterService,用来控制textbox的输入值类
型,例如PositiveInteger正整数、Integer、PositiveDecimal、Decimal、Alpha(阿尔法,不知怎么用)。
阅读全文
posted @ 2008-12-05 16:46
小庄
阅读(3163)
推荐(0)
2008年9月5日
摘要:
我们做系统时根据需求会写很多业务实体,这些实体一般用来作为业务层方法的参数(输入或者输出),例如 public bool AddUser(UserEntity userentity)这个业务方法,UserEntity是我们定义的业务实体,我们在写这个方法时,先要对这个实体里面的属性值进行合法性验证,才能进行以后的操作,当然,我们可以在在这个方法中手工写一些验证的代码来完成,只是比较麻烦而已,我们也可以借助VAB,在实体定义的属性上增加一些验证的Attribute,如下:
阅读全文
posted @ 2008-09-05 15:42
小庄
阅读(2560)
推荐(0)
2008年8月21日
摘要:
上回说到,我们配置了一下UnityConfig层,在这个层中定义了一个IContainerAccessor的接口和一个返回IUnityContainer类型的方法,这个方法的主要作用就是把Service层中的接口类和Business层中的接口实现类装配到UnityContainer中并返回,也就是指定那个接口实现类去实现某个接口类。
阅读全文
posted @ 2008-08-21 11:29
小庄
阅读(6701)
推荐(0)
2008年8月15日
摘要:
这几天园子里关于软件架构的讨论还是相当激烈,大家都想要一种能最大限度的降低各层之间依赖关系的的架构来适应变化的需求,谁都不喜欢改一点而动全身,尽量降低各层的改动产生的相互影响。
本篇我以理论和实践(源代码)两个方面和大家探讨一下我的方案,希望大家多提宝贵意见。
阅读全文
posted @ 2008-08-15 18:08
小庄
阅读(7538)
推荐(0)
2008年7月2日
摘要:
目前在.Net下实现AOP的方式分为两大类:一是采用动态代理技术,利用截取消息的方式,对该消息进行装饰,以取代或修饰原有对象行为的执行;二是采用静态织入的方式,引入特定的语法创建“方面”,从而使得编译器可以在编译期间织入有关“方面”的代码。动态代理实现方式利用.Net的Attribute和.Net Remoting的代理技术,对对象执行期间的上下文消息进行截取,并以消息传递的方式执行,从而可以在执行期间加入相关处理逻辑实现面向方面的功能(请参考:http://www.cnblogs.com/wayfarer/articles/256909.html);而静态织入的方式实现一般是要依靠一些第三方框架提供特定的语法,例如PostSharp,它的实现方式是采用 MSIL Injection和MSBuild Task在编译时置入方面的代码,从而实现AOP。
阅读全文
posted @ 2008-07-02 17:06
小庄
阅读(9274)
推荐(0)
2008年4月30日
摘要:
WCF支持多种认证技术,例如Windowns认证、X509证书、Issued Tokens、用户名密码认证等,在跨Windows域分布的系统中,用户名密码认证还是比较常用的,要实现用户名密码认证,就必须需要X509证书,为什么呢?因为我们需要X509证书这种非对称密钥技术来实现WCF在Message传递过程中的加密和解密,要不然用户名和密码就得在网络上明文传递!详细说明就是客户端把用户名和密码用公钥加密后传递给服务器端,服务器端再用自己的私钥来解密,然后传递给相应的验证程序来实现身份验证。
阅读全文
posted @ 2008-04-30 11:23
小庄
阅读(23732)
推荐(4)
2008年4月1日
摘要:
WebService来上传文件存在的问题是效率不高,而且不能传输大数据量的文件,当然你可以用Wse中的MTOM来传输大文件,有了WCF就好多了,通过使用WCF传递Stream对象来传递大数据文件.
阅读全文
posted @ 2008-04-01 16:39
小庄
阅读(22057)
推荐(4)