代码改变世界

艾伟_转载:LINQ to SQL、NHibernate比较(二)-- LINQ to SQL实例

2011-08-29 00:21 by 狼人:-), 177 阅读, 0 推荐, 收藏,
摘要:用ADO.NET操作数据库大家一定再熟悉不过了,select、insert、update等等SQL语句大家也都必然滚瓜烂熟。我将自己在学习LINQ to SQL过程中的动手经历记录下来,作为今后学习的参考,也希望对刚刚接触的人有一点帮助。 我在本文涉及到一个很简单的系统,利用DataGridView实现数据库数据的批量增、删、改,不是什么强大的功能。 如果有人感兴趣,可以在看完我的这篇文章之后用ADO.NET实现同样的功能,看看到底会比使用LINQ to SQL多多少时间,会多多少代码。(从设计到完成我用时大概2小时,代码量后面介绍中我会贴出我的代码)我相信很多人编码能力比我强很... 阅读全文

艾伟_转载:把委托说透(4):委托与设计模式

2011-08-29 00:21 by 狼人:-), 173 阅读, 0 推荐, 收藏,
摘要:委托与很多设计模式都有着千丝万缕的联系,在前面的随笔中已经介绍了委托与策略模式的联系,本节主要来讨论委托与其他两个模式:观察者模式和模板方法模式。 委托与观察者模式 在.NET中,很多设计模式得到了广泛应用,如foreach关键字实现了迭代器模式。同样的,.NET中也内置了观察者模式的实现方式,这种方式就是委托。 观察者模式的一般实现 网上可以找到很多资料介绍观察者模式的实现,我这里介绍一种简单的退化后的观察者模式,即Subject类为具体类,在其之上不再进行抽象。 public class Subject { private List<Observer> observers = 阅读全文

艾伟_转载:关于.NET VS JavaEE平台争论的沉思录

2011-08-29 00:21 by 狼人:-), 193 阅读, 0 推荐, 收藏,
摘要:最近关于.NET和java平台之间的争论似乎又热起来了,就我关注的两个社区,先是老赵的《为啥老赵不喜欢Java*语言*》。引发了博客园的大讨论,最近csdn又有人发博.Net与J2EE的快餐型比较,引发了空前的大讨论。从论调来说感觉对java不利。虽然csdn得那个篇博文深度不够,但确实引发了大量了讨论,虽然很多人都说,这个话题没啥好讨论的,既然引发了大讨论,自认有其内在原因在驱动,所谓空穴来风。。。。 关于两个平台的优劣已经讨论的够多了,我在这里就不多说了,我在这里提个现实的问题供大家思考: 国内外用.NET做的大型系统确实java的要比.NET的要多,这是客观的事实,我们研究.NE... 阅读全文

艾伟_转载:ASP.NET MVC数据验证

2011-08-29 00:21 by 狼人:-), 186 阅读, 0 推荐, 收藏,
摘要:关于ASP.NET MVC的验证,用起来很特别,因为MS的封装,使人理解起来很费解。也可能很多人都在Scott Guthrie等人写的一本《ASP.NET MVC 1.0》书中,见过NerdDinner项目中对Dinner对象修改和添加的时的数据验证。但有许多封装的地方,不知道是怎样的工作原理,今天研究了,拿出来给大家分享一下。 数据库还是上一篇blog中的库与表,同样的方法来创建news表的实体类,在自动生成的news这个实体类中,我们发现有一个特殊的分部方法: partial void OnValidate(System.Data.Linq.ChangeAction action); 这个 阅读全文

艾伟_转载:使用Ajax和jQuery实现GridView的展开、合并

2011-08-29 00:21 by 狼人:-), 139 阅读, 0 推荐, 收藏,
摘要:需求简介:电子商务网站中,查询会员的订单,点击“會員”,展现此会员的订单列表。 界面操作: Step 1 展现会员列表,如下图 Step 2 点击“某一会员”行 展现会员订单列表 实现思路: 1、 使用用户控件(CustomerOrders.ascx)展示订单列表,此用户控件只需要包含Repeater控件并绑定数据源 2、 新建一个简单页面GridViewDrillDownjQueryQAjax.aspx,在此页面引用用户控件,展示用户订单列表 3、 在页面GridViewDrillDownjQueryQAjax.aspx新建两个DIV:一个用来展示会员信息,一个用来展示某个... 阅读全文

艾伟_转载:C#下实现空白窗体上中文输入,可以实现类PS的文字工具

2011-08-29 00:21 by 狼人:-), 289 阅读, 0 推荐, 收藏,
摘要:C#下实现空白窗体上中文输入 关键字:类PS的文字工具,中文输入.重复截取中文 最近在研究做一个类PS的文字工具,查了N多的资料,问了N多个人,总算功夫不负有人心.终于给弄出来了.写出来给大家一起讨论.(高手们请多多指点) 在空白窗体上打开输入法,在C#里的空白窗口是无论如何也是打不开输入法.设置了this.ImeMode=ImeMode.NoControl也是无法打开输入法的录字窗口.去Microsoft开发论坛上问了一些问题.感谢周雪峰版主与Riquel_Dong版主给的指点.用了API函数:ImmAssociateContext(IntPtrhWnd,IntPtrhIMC);终于把输.. 阅读全文

艾伟_转载:把委托说透(3):委托与事件

2011-08-29 00:21 by 狼人:-), 172 阅读, 0 推荐, 收藏,
摘要:在把委托说透(1)和(2)中,先后介绍了委托的语法和本质,本文重点介绍.NET中与委托息息相关的概念——事件。在此之前,首先需要补充(2)中遗漏的一部分内容,即C#在语法上对委托链的支持。 C#编译器为委托类型提供了+=和-=两个操作符的重载,分别对应Delegate.Combine和Delegate.Remove方法,使用这两个操作符可以大大简化委托链的构造和移除。 好了,有了+=和-=,我们就可以开始今天的话题了。 什么是事件? 事件(event)是类型中的一种成员,定义了事件成员的类型允许类型(或者类型的实例)在某些特定事情发生的时候通知其他对象。如Button类型的Click事件,在按 阅读全文

艾伟_转载:C#来创建和读取XML文档

2011-08-29 00:20 by 狼人:-), 149 阅读, 0 推荐, 收藏,
摘要:扩展标记语言XML(eXtensible Markup Language),是由W3C组织制定的。做为用于替代HTML语言的一种新型的标记语言,XML内部有着很多基本标准,XML就是通过与这些相关标准地结合,应用于科学计算、电子出版、多媒体制作和电子商务的。C#作为一种新型的程序语言,是.Net框架的一个重要组成部分,他和XML的关系颇深。本文就从一个方面来探讨一下这二者的关系。即:看用C#如何来创建和读取XML文档。 一.本文程序设计和运行的软件环境 (一)微软公司视窗2000服务器 (二).Net FrameWork SDK Beta 2 二.C#创建XML文档 在本文中我... 阅读全文

艾伟_转载:.NET重写URL浅谈

2011-08-29 00:20 by 狼人:-), 232 阅读, 0 推荐, 收藏,
摘要:最近小项目要求重写url找了下资料用到了MS的2个dll,微软的例子写得太不明显了。后来终于改好了。 ActionlessForm.dll------用来处理回发 URLRewriter.dll----- 是微软封装好了的一个URL重写组件 添加引用---- 具体的使用说明请去看 http://msdn.microsoft.com/zh-cn/library/ms972974.aspx#XSLTsection123121120120 比我说得好得多。 具体使用方法: 首先web.config的配置: Code highlighting produced by Actipro CodeHigh. 阅读全文

艾伟_转载:在C#中实现3层架构

2011-08-29 00:20 by 狼人:-), 180 阅读, 0 推荐, 收藏,
摘要:这篇文章讨论如何在c#中实现3层架构,使用MS Access数据库存储数据。在此,我在3层架构中实现一个小型的可复用的组件保存客户数据。并提供添加,更新,查找客户数据的功能。 背景 首先,我介绍一些3层架构的理论知识。简单说明:什么是3层架构?3层架构的优点是什么? 什么是3层架构? 3层架构是一种“客户端-服务器”架构,在此架构中用户接口,商业逻辑,数据保存以及数据访问被设计为独立的模块。主要有3个层面,第一层(表现层,GUI层),第二层(商业对象,商业逻辑层),第三层(数据访问层)。这些层可以单独开发,单独测试。 为什么要把程序代码分为3层。把用户接口层,商业逻辑层,数据访问... 阅读全文

艾伟_转载:浅析IHttpModule和IHttpHandler

2011-08-29 00:20 by 狼人:-), 172 阅读, 0 推荐, 收藏,
摘要:最近开发中涉及到一些使用IHttpModule和IHttpHandler,只是储备不够,抓紧查询MSDN学习了一下,将学习点滴记录一下。 一、IHttpModule 查看这个接口的代码可以发现,它是由两个方法组成: public interface IHttpModule{ void Dispose(); void Init(HttpApplication context); } 看到两个方法及方法标签,就明白这个IHttpModule接口有什么作用了,Init方法中传入了一个HttpApplication参数,它提供对 ASP.NET 应用程序内所有应用程序对象的公用的方法、属性和事件的访问 阅读全文

艾伟_转载:ASP.NET模板引擎技术

2011-08-29 00:20 by 狼人:-), 214 阅读, 0 推荐, 收藏,
摘要:以前听我朋友说起php的模板引擎技术的时候似懂非懂哪时感觉真的很强,一直在想asp.net有这种技术吗?我不知道我的理解是不是对的.其实 asp.net的模板引擎技术就是先建好一个静态的html页面我们称它为模板页,你如果有不同形式的页面哪就得建立不同的静态模板页,然后在后台用文件操作往这个文件里写东西然后在把这个模板页另存到一个静态页面的目录,不好意思可能我的理解太俗,如果有更好的理解和想法可以在apolov发文章告诉我谢谢。现在我附加一下代码 Default.aspx这个页面只有几个textbox控件和两个按妞控件 Code highlighting produced by Ac... 阅读全文

艾伟_转载:对于C#中b=a的N种情况分析

2011-08-29 00:20 by 狼人:-), 164 阅读, 0 推荐, 收藏,
摘要:本文旨在验证一个容易混淆的概念,从而为《玩转WPF/Silverlight中INotifyPropertyChanged和ObservableCollection》做铺垫。 两个相同类型的变量a和b,并且有如下关系: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->b=a; 如果a发生改变,b是否也发生改变呢? 情况很复杂,分以下几种情况谈论: 1) 单个实体 1. 简单类型 先考察int: Code highlight... 阅读全文

艾伟_转载:C# .NET学习经验总结

2011-08-29 00:20 by 狼人:-), 191 阅读, 0 推荐, 收藏,
摘要:1. 装箱、拆箱还是别名 许多介绍C# .NET学习经验的书上都有介绍 int -> Int32 是一个装箱的过程,反之则是拆箱的过程。许多其它变量类型也是如此,如:short <-> Int16,long <-> Int64 等。对于一般的程序员来说,大可不必去了解这一过程,因为这些装箱和拆箱的动作都是可以自动完成的,不需要写代码进行干预。但是我们需要记住这些类型之间 的关系,所以,我们使用“别名”来记忆它们之间的关系。 C# 是全面向对象的语言,比 Java 的面向对象都还彻底——它把简单数据类型通过默认的装箱动作封装成了类。Int32、Int16、Int64 阅读全文

艾伟_转载:C# 委托的同步调用和异步调用

2011-08-29 00:20 by 狼人:-), 191 阅读, 0 推荐, 收藏,
摘要:委托的Invoke方法用来进行同步调用。同步调用也可以叫阻塞调用,它将阻塞当前线程,然后执行调用,调用完毕后再继续向下进行。 同步调用的例子: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using System;using System.Threading;public delegate int AddHandler(int a, int b);public class Foo { static void Main() { ... 阅读全文
上一页 1 ··· 272 273 274 275 276 277 278 279 280 ··· 312 下一页