随笔分类 -  早期文章归档

摘要:对于”yield”这个关键字我已经见过N次了,直到最近我才知道这个关键字所蕴含的力量。我将在下面展示出一些使用”yield”让你的代码有更高可读性和更好性能的例子. 为了让你对yield有一些快速概览,我首先要展示一个没有使用这个关键字的例子,下面的代码很简单,但在我最近的项目中却很常见 IList<string> FindBobs(IEnumerable<strin... 阅读全文
posted @ 2009-12-16 12:47 CareySon 阅读(21816) 评论(21) 推荐(13)
摘要:在正式开始之前,我需要先声明:这些关键字对于偏向底层的程序员更加耳熟能详,对这些关键字不了解并不影响你作为一个合格的程序员。这意味着这些关键字会让你在编写程序时得到更好的代码质量和可读性,enjoyyieldyield关键字会告诉编译器当前的函数是在一个循环内部,编译器会相应生成一个执行它在循环体内部所表示行为的类,yield和return关键字一起用于为枚举器对象提供返回值,比如说:在forea... 阅读全文
posted @ 2009-12-15 13:44 CareySon 阅读(7790) 评论(28) 推荐(12)
摘要:JQuery包装集内的元素在一开始的选定后,还可以通过一系列JQuery提供的方法对包装集内的元素进行扩充,修改,筛选,删除find()方法 VS filter()方法这两个方法是比较容易搞混的.filter方法表示的是对当前内部的元素进行筛选,这个接受两种参数,一个返回bool的function,或者是JQuery的选择表达式,包装集内的元素只会小于等于当前包装集内的元素,并且含有的元素属于原来... 阅读全文
posted @ 2009-12-14 17:40 CareySon 阅读(1795) 评论(6) 推荐(1)
摘要:引入   每次当浏览器向Web服务器发起一个请求的时,都会伴随着一些HTTP头的发送.而这些HTTP头是用于给Web服务器提供一些额外信息以便于处理请求。比如说吧。如果浏览器支持压缩功能,则浏览器会发送Accept-Encoding HTTP头,这样一来服务器便知道浏览器可以使用哪种压缩算法。还有任何在上一次传输中服务端设置的cookies也会通过Cookies HTTP头来回... 阅读全文
posted @ 2009-12-14 13:22 CareySon 阅读(9307) 评论(10) 推荐(9)
摘要:包装集总是面向集合的     我想这个理解起来很简单,被$()包装的JQuery对象总是以集合的形式出现.就算包装集中只有一个对象. <div id="a"></div><div id="b"></div> <script type="text/java... 阅读全文
posted @ 2009-12-13 20:23 CareySon 阅读(3180) 评论(3) 推荐(3)
摘要:     最近一直在研究JQuery,这个东西还是很博大精深的.下面分享一下我的学习总结.$(document).Ready()方法 VS OnLoad事件 VS $(window).load()方法     接触JQuery一般最先学到的是何时启动事件。在曾经很长一段时间里,在页面载入后引发的事件都被加载在”Body... 阅读全文
posted @ 2009-12-12 22:04 CareySon 阅读(3410) 评论(6) 推荐(6)
摘要:     最近,Twitter上发起了一个一个关于“你最爱的Asp.net MVC项目组织方式”,我自己研究了一些组织项目文件的方法。而我现在一直喜欢用的方式是一个几句灵活性的方式,此外,这个方式还非常简单。      如上图,整个解决方案里只有两个项目,首先让我们来看UI项目,UI项目只包含了那些和Website相关... 阅读全文
posted @ 2009-12-12 20:24 CareySon 阅读(10399) 评论(28) 推荐(11)
摘要:       上一周我我在罗马进行了两场对于开发完成不久的http://www.dotnetromacesta.org/的Asp.net MVC的演讲。而其中一场演讲内容是关于我对于Asp.net MVC最佳实践的看法.因为这场演讲是在意大利进行的,为了大家能更好的阅读,我将演讲所用的ppt翻译成英文。   ... 阅读全文
posted @ 2009-10-31 23:19 CareySon 阅读(7515) 评论(14) 推荐(9)
摘要:Asp.net控件开发学习笔记(十二)----数据绑定数据绑定和服务器控件模板互为补充,数据绑定用于从数据库中提取数据,而上一章说的服务器控件模板是将这些数据以一定的格式显示在网页中,对于大多数网站来说,根据内容生成特定的html非常常见,而对于开发人员来说,从数据库中提取出数据再以一定的格式显示到网页上是经常需要完成的工作,而这些大多都利用GridView,Repeater等控件的数据绑定功能。... 阅读全文
posted @ 2009-10-29 07:29 CareySon 阅读(1434) 评论(0) 推荐(1)
摘要:在Asp.net 2.0以后的版本,Asp.net提供了服务器控件模板(Template)和数据绑定(Data Bind)来简化开发工作,模板是是用于定制化服务器控件或者HTML如何在页面呈现,而模板和数据绑定往往结合起来在一起实现更高级的功能,比如最经典的GridView.例如,在 GridView服务器控件中可以使用 HTML 元素和控件的组合来创建列表中每行的布局。同样,GridView服务... 阅读全文
posted @ 2009-10-19 18:40 CareySon 阅读(2903) 评论(1) 推荐(2)
摘要:在每一次http的Request和Response周期asp.net web form都会执行一系列被称为控件生命周期的预定义过程 在第一次通过HTTP Get方法获取到页面后,每一次向服务端进行HTTP POST回传都会分为以下几个步骤:1. 初始化控件树2. 将回传的ViewState进行解析3. 根据前几次的回传解析来为控件树中的每一个控件设置状态4. 处理回传数据5. 处理Page_Lo... 阅读全文
posted @ 2009-10-15 19:36 CareySon 阅读(4659) 评论(8) 推荐(5)
摘要:今天看到飞林沙同学的两个帖子 把Array说透和把Array说透序一这两个帖子都是从很底层的原理以及来说Array数组,看了让人很受启发,所以我想写一篇从FCL的角度来阐述数组的文章,权当抛砖引玉,高手请飘走.... System.Array 地球人都知道,所有的数组都是隐式的派生于这个基类。在MSDN里可以发现System.Array的原型是: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1[SerializableAttribute] 阅读全文
posted @ 2009-10-14 09:23 CareySon 阅读(3264) 评论(10) 推荐(4)
摘要:EventCollection如果在单个控件中有多个事件,那么使用System.ComponentModel.EventHandlerList对事件进行保存将会在内存占用上有不错的提高。EventHandlerList对一个类内发布多个事件提供了一个列表容器。下面是多个事件和使用EventHandlerList的对比示意:第一步是实例化一个EventHandlerList的实例:protected... 阅读全文
posted @ 2009-10-14 06:47 CareySon 阅读(2942) 评论(1) 推荐(3)
摘要:事件和委托之间的暧昧关系往往是大多Web Developer在学习.net中的一个里程碑,当明白事件和委托的关系后,.net水平往往就上了一个新的台阶.下面说到服务器控件的事件模型. 在任何一个服务器编程开发框架中,事件都是解耦功能和具体实现的一剂良方,Asp.net当然也不例外。比如说吧,页面上的button的click事件表示它的功能,而具体的实现将会被分离交给Developer来进行具体实现... 阅读全文
posted @ 2009-10-12 16:14 CareySon 阅读(3074) 评论(1) 推荐(6)
摘要:WebControl基类 在Asp.net控件开发中,WebControl基类给我们提供了对于控件的Style更加灵活的解决方案,因为在System.Web.UI.Control基类中只能手动的输入呈现在客户端的代码,但如果开发的服务器控件对style的要求较高。那Control基类的局限性就显而易见了,而继承WebControl类作为基类将会是很好的选择。 System.web.UI.WebCo... 阅读全文
posted @ 2009-10-10 14:47 CareySon 阅读(6588) 评论(5) 推荐(6)
摘要:在Asp.net中,利用Http Post的回传机制意味着可以再客户端存储状态并且可以在服务器接收.Asp.net中大部分控件都提供了存储自身状态的功能并且在自身状态改变时引发对应事件。IPostDataHandler接口提供了在服务器处理客户端通过Http Post回传数据的方法。IPostDataHandler通过实现IPostDataHandler接口,服务器可以在不使用Page和Reque... 阅读全文
posted @ 2009-10-09 17:19 CareySon 阅读(3701) 评论(3) 推荐(4)
摘要:Asp.net提供了很多种与客户端状态交互的方式,控件开发人员可以给控件添加额外的值(比如控件的ViewState)来使控件貌似能记住前一个值.Asp.net提供了四种客户端状态管理的方式。他们是:lViewStatelURL stringslHidden Html VariableslCookiesURL String 利用URL传值请求服务器是简单并且应用最广泛的。比如在电子商务中,一个像这样... 阅读全文
posted @ 2009-10-04 13:08 CareySon 阅读(3463) 评论(3) 推荐(4)
摘要:Asp.net请求处理构架当一个客户端浏览器对IIS发起访问请求资源时(比如一个.aspx文件),Asp.net会初始化并维护一个包含了多个Response和Request的Http Session 的客户端的连接。一次典型的访问如下图: 上图中,首先,一个请求发到IIS服务器,IIS会检查请求的扩展名,如果是aspx或者ascx文件,IIS会自动匹配到aspnet_isapi.dll来处理这个请... 阅读全文
posted @ 2009-10-03 15:05 CareySon 阅读(2923) 评论(4) 推荐(4)
摘要:封装 在asp.net中,控件被分为两类.用户控件和自定义服务器控件。前者就是我们经常用来将一些可复用的内容封装成的.ascx文件。这里主要研究后者.创建自定义服务器控件 创建自定义控件的第一步是选择以哪一个类作为基类来创建控件,Asp.net最常见的几个基类罗列如下:lSystem.Web.UI.Control:这是所有控件的基类,所有作为控件的类都必须直接或者间接的继承此类,此类仅仅提供最少量... 阅读全文
posted @ 2009-10-02 17:10 CareySon 阅读(4204) 评论(20) 推荐(5)
摘要:接上篇……..通过查看System.Web.UI.HtmlControls命名空间,我们可以发现,很多HTML对应的标签都可以通过添加runat=”server”属性转化为服务器控件,比如<table>会转化为HtmlTable对象,但像<input >标签可以通过type属性对应不同的服务器对象。当html内的标签没有和上图... 阅读全文
posted @ 2009-09-30 19:24 CareySon 阅读(4525) 评论(7) 推荐(6)