自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (1)
  • 收藏
  • 关注

原创 学习笔记(二)

<br />1、Observer设计模式是为了定义对象间的一种一对多的依赖关系,以便于当一个对象的状态改变时,其他依赖于它的对象会被自动告知并更新。Observer模式是一种松耦合的设计模式。<br /><br />2、当创建类型的目的是为了存储一组相关的数据,且数据量不是很大的时候,将它声明为Struct比Class会获得更高的效率;2、将类型声明为具有原子性和常量性,可以避免可能出现的数据不一致问题;3、通过在构造函数和Get访问器中,对对象的字段进行深度复制,可以避免在类型的外部修改类型内部数据的问题

2011-04-20 11:30:00 383

原创 C#学习笔记

1、.Net Framework提供给我们灵活强大的数据操控能力。比如说,当我们需要对数据进行筛选的时候,我们想到的是“Where”子句,而不是List.FindAll();当我们需要对数据进行排序的时候,我们想到的是“Order By”子句,而不是List.Sort();当我们需要对数据进行分页的时候我们想到的是存储过程,而不是List.GetRange()。2、Lambda 表达式是一种匿名函数结构,它可以方便的实现委托、查询综合和扩展方法的 delegate 类型参数的初始化定义。形式:( 形参列表

2011-04-18 15:19:00 433

转载 C#中的委托和事件(很不错的一篇文章)

C# 中的委托和事件引言委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对Observer设计模式的意义,对它们的中间代码也做了讨论。将方法作为方法的参数我们先不管这个标

2011-04-01 09:55:00 489

转载 Javascript闭包

学习Javascript闭包(Closure)<br />作者: 阮一峰<br />日期: 2009年8月30日<br />闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。<br />下面就是我的学习笔记,对于Javascript初学者应该是很有用的。<br />一、变量的作用域<br />要理解闭包,首先必须理解Javascript特殊的变量作用域。<br />变量的作用域无非就是两种:全局变量和局部变量。<br />Javascript语言的特殊之

2011-03-31 11:25:00 296

转载 C#4.0的新特性

一、新关键词——dynamic  在新版本的C#中,dynamic关键词是一个很重要的新特性,现在你可以创建动态对象并在运行时再决定它的类型。而且.net 4.0为CLR加入了一组为动态语言服务的运行时环境,称为DLR(Dynamic Language Runtime动态语言运行时),这使得C#这种静态类型语言可以在 .NET Framework 中开发动态语言并为与其它动态语言提供互操作性了。DLR架构见下图:关于DLR的更详细信息,可以参考msdn:http://msdn.microsoft.com/e

2011-03-29 10:44:00 430

转载 HttpHandler和HttpModule的区别及处理顺序

<br />一 asp.net请求的处理过程<br />--------------------------------------<br />HttpModule 必须要掌握的东西<br />HttpHandler 必须要掌握的东西,非常有用<br />以上两个的实例<br />--------------------------------------<br />asp.net 事件模型机制<br />--------------------------------------<br />一<br />

2011-03-28 13:44:00 706

原创 学习ViewState笔记

1、大部分ASP.NET服务器控件是通过ViewState的方式储存其属性值的;2、任何赋值给ViewState的变量都会被装箱为Object类型的变量;3、在调用了TrackViewState()方法后,StateBag才开始跟踪其所包含项值的变化;4、在TrackViewState()方法调用后,只要是出现了赋值操作那么就会使其被标记为脏数据,StateBag并不会判断赋值前后对应项的值是否出现了变化;5、在_ViewState隐藏变量中存储的Base64编码的字符串,存储的数据是ViewState中那

2011-03-21 16:08:00 614

原创 关于[Serializable]

<br />System.SerializableAttribute<br />串行化是指存储和获取磁盘文件、内存或其他地方中的对象。在串行化时,所有的实例数据都保存到存储介质上,在取消串行化时,对象会被还原,且不能与其原实例区别开来。<br />只需给类添加Serializable属性,就可以实现串行化实例的成员。<br />并行化是串行化的逆过程,数据从存储介质中读取出来,并赋给类的实例变量。<br />Serializable在C#中的作用.NET 中的对象序列化<br /><br />简介<br /

2011-03-21 11:26:00 505

原创 (转)服务器控件生命周期

服务器控件生命周期服务器控件的生命周期是创建服务器控件最重要的概念。作为开发人员,必须对服务器控件生命周期深刻理解。当然,这不是一朝一夕就可以做到的。对于学习控件开发技术的初学者,可以不必掌握得非常详细深入,只需对服务器控件的生命周期中的不同阶段有一个大致的了解即可。  在掌握服务器控件生命周期的过程中,读者要特别注意有关服务器控件状态的相关内容。在重点了解生命周期各个阶段的同时,对服务器控件的状态变化要注意以下问题:控件的生命周期何时保存控件和恢复其状态;何时与页面及其他控件之间进行交互;何时执行重要的处

2011-03-19 13:41:00 428

转载 (转)一个ASP.NET页面的生命周期

在ASP.NET 2.0中,一个ASP.NET页面的生命周期主要为:客户端请求页面 预初始化(OnPreInit) 初始化(OnInit) 完成初始化(OnInitComplete) 载入ViewState(LoadViewState) 处理回送数据(IPostBackDataHandler) Page_OnPreLoad—》Page_OnLoad 回发更改通知(RaisePostDataChangedEvent) 处理回发事件(RaisePostBackEvent) Page_OnLoadComplete

2011-03-19 11:30:00 584

原创 [转]form的get和post详细分析

理解form的get和post在HTML中,form元素用method属性来指定有两种不同的提交方法,即"get"(默认值)和"post"。1. get和post的定义W3C的HTML 4.01 specification说,form元素的method属性用来指定发送form的HTTP方法。使用get时,form的数据集(形如control-name=current-value的键值对)被附加到form元素的action属性所指定的URI后面; 使用post时,form的数据集(形如control-name

2011-03-19 11:14:00 706

转载 ASP.NET(C#)页面间传值的常见方法(转载)

<br />SendValues.aspx: txtFromValue->TextBox<br />WebRecieve.aspx: txtRecieve->TextBox<br />1: Session<br />Send Page:<br />Session["Name"]=this.txtFromValue.Text;<br />Server.Transfer("WebRecieve.aspx");<br />Receive   Page:<br />this.txtRecieve.Text=Sess

2011-03-19 11:00:00 438

转载 APPlication,Session,Cookie,ViewState和Cache

<br /><br /> APPlication,Session,Cookie,ViewState和Cache之间的区别收藏 在ASP.NET中,有很多种保存信息的对象.例如:APPlication,Session,Cookie,ViewState和Cache等,那么它们有什么区别呢?每一种对象应用的环境是什么?<br />    为了更清楚的了解,我们总结出每一种对象应用的具体环境,如下表所示:  方法信息量大小保存时间应用范围保存位置Application任意大小整个应用程序的生命期所有用户服务器端

2011-03-19 10:58:00 368

原创 Asp.net程序性能优化的七个方面之七(性能测试)

<br />七、性能测试<br />在对ASP.NET应用程序进行性能测试之前,应确保应用程序没有错误,而且功能正确。具体的性能测试可以采用以下工具进行:<br />1、Web Application Strees Tool (WAS)<br />  Web Application Strees Tool (WAS)是Microsoft发布的一个免费测试工具,可以从http://webtool.rte.microsoft.com/上下载。它可以模拟成百上千个用户同时对web应用程序进行访问请求,在服务器上形

2011-03-19 10:50:00 614

原创 Asp.net程序性能优化的七个方面之五(配置web.config)

<br />五、配置web.config<br /><br />1、一定要禁用调试模式<br />  在部署生产应用程序或进行任何性能测量之前,始终记住禁用调试模式。如果启用了调试模式,应用程序的性能可能受到非常大的影响。<br /><compilation defaultLanguage="c#" debug= "false" / ><br /><br />2、必要时调整应用程序每个辅助进程的线程数<br />  ASP.NET 的请求结构试图在执行请求的线程数和可用资源之间达到一种平衡。已知一个使用足够

2011-03-19 10:49:00 740

原创 Asp.net程序性能优化的七个方面之六(其他)

<br />六、其他<br />1、适当地使用公共语言运行库的垃圾回收器和自动内存管理<br />  小心不要给每个请求分配过多内存,因为这样垃圾回收器将必须更频繁地进行更多的工作。另外,不要让不必要的指针指向对象,因为它们将使对象保持活动状态,并且应尽量避免含 Finalize 方法的对象,因为它们在后面会导致更多的工作。特别是在 Finalize 调用中永远不要释放资源,因为资源在被垃圾回收器回收之前可能一直消耗着内存。最后这个问题经常会对 Web 服务器环境的性能造成毁灭性的打击,因为在等待 Fina

2011-03-19 10:49:00 457

原创 Asp.net程序性能优化的七个方面之四(使用缓存)

<br />四、使用缓存<br />1、使用Output Cache缓存数据<br />提供缓存功能是ASP.net中非常强大的一种功能。曾看到过某些评测说:ASP.net程序的性能比SUN的JSP应用程序性能快上几倍,实际上,该评测程序非常重要的一点就是使用了很多ASP.net的缓存功能。<br />  如果你的组件是要在Asp.net应用程序中运行,你只要把System.Web.dll引用到你的项目中就可以了。然后用HttpRuntime.Cache属性就可访问Cache了(也可以通过Page.Cach

2011-03-19 10:48:00 502

原创 Asp.net程序性能优化的七个方面之三(程序改进)

<br />三、c#(或vb.net)程序改进<br />1、使用值类型的ToString方法<br />  在连接字符串时,经常使用"+"号直接将数字添加到字符串中。这种方法虽然简单,也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作转化为引用类型才可以添加到字符串中。但是装箱操作对性能影响较大,因为在进行这类处理时,将在托管堆中分配一个新的对象,原有的值复制到新创建的对象中。<br />  使用值类型的ToString方法可以避免装箱操作,从而提高应用程序性能。<br />int n

2011-03-19 10:47:00 348

原创 Asp.net程序性能优化的七个方面之二(页面优化)

<br />二、页面优化<br /><br />1、不使用不必要的服务器控件(Server Control)<br />ASP.net中,大量的服务器端控件方便了程序开发,但也可能带来性能的损失,因为用户每操作一次服务器端控件,就产生一次与服务器端的往返过程。因此,非必要,应当少使用Server Control。还有许多其他情况,在这些情况中呈现或数据绑定比使用服务器控件更有效,甚至是在使用服务器控件模板时。但是,如果要以编程方式操作服务器控件的属性、处理服务器控件事件或利用视图状态保存,则使用服务器控件是

2011-03-19 10:46:00 485

转载 Asp.net程序性能优化的七个方面之一(数据库操作)

<br />一、数据库操作<br />1、用完马上关闭数据库连接<br />  访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资<br />源。ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能的影响。系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求。<br /><br />   连接池的大小是有限的,如果在连接池达到最大限度后仍要求创建连接,必然大大影响性能。因

2011-03-19 10:45:00 595

转载 ASP.NET应用中十大常见的潜在问题(转载)

<br /><br />Jeff Prosise在《MSDN杂志》2006年7月期上的文章历数ASP.NET应用中常见的,容易出错,影响性能和扩缩性的潜在问题<br />Keep Sites Running Smoothly By Avoiding These 10 Common ASP.NET Pitfalls<br />http://msdn.microsoft.com/msdnmag/issues/06/07/WebAppFollies/<br />1。设置输出缓存的用户控件,如果用LoadContr

2011-03-19 10:30:00 426

转载 通过避免下列10个常见ASP.NET缺陷使网站平稳运行

<br />本文将讨论: •<br />缓存和 Forms 身份验证 •<br />视图状态和会话状态 •<br />配置文件属性序列化 •<br />线程池饱和 •<br />模拟和设置配置文件<br />本文使用了下列技术:<br />.NET Framework、ASP.NET、Windows Server 2003本页内容LoadControl 和输出缓存会话和输出缓存Forms 身份验证票证生存期视图状态:无声的性能杀手SQL Server 会话状态:另一个性能杀手未缓存的角色配置文件属性序列化线

2011-03-19 10:25:00 447

转载 ASP.NET 2.0无刷新页面新境界(转载)

     “无刷新页面”,只是一种不确切的效果描述(其实还有其他各种方法来实现这个效果),更确切的说法是:在页面上用JavaScript调用服务器端的一个方法,然后处理返回的数据。实现它最标准的方法当然是XMLHTTP。但是,程序员都是懒惰的家伙,每个人都希望能有更方便的方法,或者,更佳的包装。比如,Lostinet的Rane就是对XMLHTTP的一个很好的包装。   终于,在ASP.NET 2.0里面,我们可以轻松的来做到这点了。服务器端任何实现了System.Web.UI.ICallbackEventH

2011-03-19 10:18:00 355

转载 编写高性能Web应用程序的10个技巧(转载)

<br />使用ASP.NET编写Web应用程序的简单程度令人不敢相信。正因为如此简单,所以很多开发人员就不会花时间来设计其应用程序的结构,以获得更好的性能了。在本文中,我将讲述 10 个用于编写高性能 Web 应用程序的技巧。但是我并不会将这些建议仅局限于 ASP.NET 应用程序,因为这些应用程序只是 Web 应用程序的一部分。本文不作为对 Web 应用程序进行性能调整的权威性指南 — 一整本书恐怕都无法轻松讲清楚这个问题。请将本文视作一个很好的起点。<br />成为工作狂之前,我原来喜欢攀岩。在进行任

2011-03-19 10:08:00 335

原创 “如何将16进制码流在html中显示为图片”兼容多个浏览器的方案

原帖:如何将16进制码流在html中显示为图片 新的浏览器(ff3、ie8、chrome)img标签支持,如: 的格式,可以指定编码 这个帖子楼主已经结了,但解决方案并不理想,不支持ie6、ie7而使用这个两个版本的浏览器用户量不小。 我们知道ie可以将html打包保存为一个mht文件,这个文件包括了脚本和图片,用记事本打开,里面就是采用base64编码的文本 如: ------=_NextPart_000_0000_01CA69C7.3AF566D0Conten

2011-03-17 15:21:00 1708

转载 ViewState持久化保持在服务器端

<br />如果你有一个非常酷的页面,页面上很多东西自动地响应用户操作而展现丰富的变化,你的ViewState是很有可能达到200K的。<br /><br />这里是我将ViewState持久化保持在服务器端的代码,这样ViewState不占用网络带宽,因此其存取只是服务器的磁盘读取时间。并且它很小,可以说是磁盘随便转一圈就能同时读取好多ViewState,因此可以说“不占时间”。为了再“不占磁盘时间”,我还使用了缓存。<br /><br />一下这段代码可以放在页面中,或者页面的父类中:protected

2011-03-17 14:05:00 482

转载 转 Javascript学习心得

1、typeof 是一个运算符而不是函数  返回值据说有6种:"string"、"object"、"number"、"undefined"、"function"、"boolean",但我发现还有一个"unknown"2、Window对象,更象一个命名空间  var i = 123;  Window.i和Window["i"]都可以访问变量i1.var a = 1235;2.alert(window.a);1.function f(){2.    var a = 123456;3.    alert(wind

2011-03-17 13:35:00 339

原创 T-SQL经典语句

一、基础1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:/mssql7backup/MyNwind_1.dat'--- 开始 备份BACKUP DATABASE pubs TO testBack 4、说明:创建新表create table

2011-03-17 11:21:00 637

转载 Web系统错误日志处理

Global.asax文件中加入  ///   /// 系统错误日志记录  ///   ///   ///   protected void Application_Error(Object sender, EventArgs e)  {    //错误的全局处理    Exception  ex = Server.GetLastError().GetBaseException() ;    //记录错误日志    string strFile = Request.ApplicationPath + "/s

2011-03-17 11:04:00 885

转载 网站开发常用(转载)

常用代码 Asp.net 中DataGrid多个参数链接设置 <br />1、链接带多个参数。<br /><br />Asp.net 中DataGrid多个参数链接设置 <br />1、链接带多个参数。<br /><Columns><br /><asp:HyperLinkColumn<br />DataNavigateUrlField="au_id"<br />DataNavigateUrlFormatString="View_details.aspx?id={0}"<br />Text="详细信息"<br

2011-03-17 10:49:00 426

转载 文本框限制字符数的方案

<br />当我们在ASP.NET开发时,经常会遇到一个头疼的问题:字符数的控制 <br /> 由于数据库的字段长度是固定的,因此在进行字符输入时,最关键的就是控制字符的个数不能超过字段的长度,要不然,一个个异常会让人疯掉的。 <br />  对于单行文本框,不管是HTML控件还是Web控件,我们经常会使用MaxLength来控制,但这种控制无法控制到中文字符,即MaxLength=50的控制,可以输入50个英文与50个中文,这样的话,还是会导致中文字符数的溢出。 <br />  对于多行文本框,那就更惨了

2011-03-17 10:32:00 3404

转载 Web开发中常见的安全缺陷及解决办法(转载)

<br />提纲:  <br /> 一、不能盲目相信用户输入 <br /> 二、五种常见的ASP.NET安全缺陷 <br /> 2.1 篡改参数 <br /> 2.2 篡改参数之二 <br /> 2.3 信息泄漏 <br /> 2.4 SQL注入式攻击 <br /> 2.5 跨站脚本执行 <br /> 三、使用自动安全测试工具 <br /> <br /> 正文: <br /> 保证应用程序的安全应当从编写第一行代码的时候开始做起,原因很简单,随着应用规模的发展,修补安全漏洞所需的代价也随之快速增长。根据IB

2011-03-17 10:19:00 376

转载 您可能不知道的.Net2.0小技巧

<br />1.  在提交页面之后,保持滚动条的位置<br />可以在page指令上加上MaintainScrollPositionOnPostback指令<br /><%@ Page Language="C#" MaintainScrollPositionOnPostback="true" AutoEventWireup="true" CodeFile="..." Inherits="..." %><br />2.  在页面载入完之后,将焦点移动到某个控件,只需要指定Form的DefaultFocus属性

2011-03-17 10:15:00 307

css 菜单生成工具

不用记css了,只要用鼠标点点就能得到很好的样式代码!用过就知道了,操作很简单的!

2008-09-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除