|>> 官方网站: http://www.xizhang.com 微博:http://weibo.com/chenxizhang

陈希章@中国

:: 心有多宽,路就有多宽 :: | :: http://tech.xizhang.com :: Microsoft .NET开发人员职业规划和学习路线图::

导航

统计

公告

04 2009 档案

OpenXML SDK 2.0发布
摘要: 最近在看与OpenXML有关的东西。所谓OpenXML其实就是指Office 2007的一套新的格式,应用于Word,Excel,Powerpoint。了解这个主要想看看如何通过OpenXML的格式更...阅读全文

posted @ 2009-04-29 15:07 陈希章 阅读(1741) | 评论 (0) 编辑

LINQ中的Let关键字
摘要: 据说这是.NET 3.5SP1中的一个增强,LET关键字目前我看起来就是对子查询的一个别名 static void Main(string[] args){ int[] numbers = new[]...阅读全文

posted @ 2009-04-29 10:44 陈希章 阅读(411) | 评论 (0) 编辑

DataSet中进行Join操作
摘要: 我们知道在T-SQL查询中可以很方便地将两个甚至是多个表的数据进行连接(join)操作,其结果就是新的结果集将包含多个表的列数据。 如果是在客户端的DataSet中,也希望实现这样的效果,那么需要怎么...阅读全文

posted @ 2009-04-29 10:30 陈希章 阅读(584) | 评论 (0) 编辑

使用SQL Server 2008提供的表分区向导
摘要: 表分区(Partition Table)是自从SQL Server 2005就开始提供的功能,解决的问题是大型表的存储和查询。 我们之前大致的语法是这样的 -- ===================...阅读全文

posted @ 2009-04-29 08:22 陈希章 阅读(1523) | 评论 (2) 编辑

通过编程添加自动化作业
摘要: 有时候看一些程序,他们在安装的时候,会在SQL Server里面创建一些特定的作业,以便为其执行自动化任务。我就在想,这是怎么做到的呢?我们以前一般都是通过SSMS的界面来完成这个事情的 1. 通过T...阅读全文

posted @ 2009-04-29 07:53 陈希章 阅读(260) | 评论 (3) 编辑

SSIS 2008中的Data Profiler任务
摘要: 首先要说,什么是Data Profiler? 看这个名字其实很难中文翻译,用过之后才知道它其实是指说对数据的一些特性扫描和分析,例如一个表里面数据的分布情况。其实这看起来有些类似数据挖掘分析,它很类似...阅读全文

posted @ 2009-04-29 07:00 陈希章 阅读(93) | 评论 (0) 编辑

SQL Server 2008 的CDC功能
摘要: CDC(Change Data Capture)通过对事务日志的异步读取,记录DML操作的发生时间、类型和实际影响的数据变化,然后将这些数据记录到启用CDC时自动创建的表中。通过cdc相关的存储过程,...阅读全文

posted @ 2009-04-28 11:45 陈希章 阅读(493) | 评论 (5) 编辑

使用自定义表类型(SQL Server 2008)
摘要: 在 SQL Server 2008 中,用户定义表类型是指用户所定义的表示表结构定义的类型。您可以使用用户定义表类型为存储过程或函数声明表值参数,或者声明您要在批处理中或在存储过程或函数的主体中使用的...阅读全文

posted @ 2009-04-28 11:07 陈希章 阅读(780) | 评论 (0) 编辑

SQL Server 2008的审核功能
摘要: 这是SQL Server 2008安全性方面的一个新增功能,可以针对服务器乃至数据库级别进行审核(Audit),其精细程度甚至可以到达DML语句级别,也就是很多朋友可能希望的监控INSERT,UPDA...阅读全文

posted @ 2009-04-28 09:29 陈希章 阅读(87) | 评论 (0) 编辑

在SSMS(2008)中对数据库对象进行搜索和筛选
摘要: 我记得在两年前讲SQL Server 2005的课程的时候,有一个朋友提出了这么一个疑问:我的数据库里面的存储过程非常多,有没有什么办法快速定位到我想要的存储过程,除了一个一个去找之外。 虽然看起来不...阅读全文

posted @ 2009-04-28 08:51 陈希章 阅读(71) | 评论 (0) 编辑

有意思的数字运算组合
摘要: 大家注意观察下面的数字组合,很有意思吧 1 * 8 + 1 = 9 12 * 8 + 2 = 98 123 * 8 + 3 = 987 1234 * 8 + 4 = 9876 12345 * ...阅读全文

posted @ 2009-04-27 21:56 陈希章 阅读(217) | 评论 (1) 编辑

VPN和远程桌面
摘要: 这是两种常见的共享数据和应用程序的方式:VPN主要共享文档或者数据。而远程桌面则直接就将服务端的桌面控制权投射到客户端这里来。 配置VPN的文章很多,下面这个链接可以看一下 http://www.qq...阅读全文

posted @ 2009-04-27 11:43 陈希章 阅读(1635) | 评论 (0) 编辑

在ASP.NET 中上传或者下载文件
摘要: 详细的资料,请参考如下两个链接 http://www.microsoft.com/china/msdn/library/webservices/asp.net/dnvs05Internals.msp...阅读全文

posted @ 2009-04-27 10:35 陈希章 阅读(126) | 评论 (0) 编辑

ASP.NET 2.0的内部变化
摘要: 完整的内容请参考下面微软官方的文章 http://www.microsoft.com/china/msdn/library/webservices/asp.net/dnvs05Internals.ms...阅读全文

posted @ 2009-04-27 10:11 陈希章 阅读(65) | 评论 (0) 编辑

谈谈网站静态化 【转载】
摘要: 本文转载自: http://blog.csdn.net/yizhu2000/archive/2008/09/01/2863324.aspx 我个人觉得是很好的一个总结 写在前头 静态化是解决减轻网站...阅读全文

posted @ 2009-04-27 09:19 陈希章 阅读(61) | 评论 (0) 编辑

麻省理工学院(MIT)的公开课程
摘要: 很早之前就听说麻省理工学院把很多课程公开了,今天偶尔搜到这个内容。还不错 http://www.core.org.cn/OcwWeb/index.htm 课程列表 http://www.core.or...阅读全文

posted @ 2009-04-27 08:24 陈希章 阅读(144) | 评论 (0) 编辑

如何通过编程方式添加Native Client服务器别名
摘要: 之前我有一篇博客讲到了Native Client中添加服务器别名的问题。请参考下面的链接(讨论服务器别名的内容在该链接文章的底部) http://www.cnblogs.com/chenxizhang...阅读全文

posted @ 2009-04-26 17:03 陈希章 阅读(83) | 评论 (0) 编辑

配置Reporting Service以发送邮件
摘要: 不少朋友会问到,Repoting Service配置管理器中的这个电子邮件设置到底如何设置? 有关配置的详细细节,请参考http://technet.microsoft.com/zh-cn/libra...阅读全文

posted @ 2009-04-26 16:37 陈希章 阅读(448) | 评论 (9) 编辑

SQL Server 2008 T-SQL之Merge语法
摘要: Merge语法是对插入,更新,删除这三个操作的合并。根据与源表联接的结果,对目标表执行插入、更新或删除操作。例如,根据在另一个表中找到的差异在一个表中插入、更新或删除行,可以对两个表进行同步。 阅读全文

posted @ 2009-04-26 15:39 陈希章 阅读(239) | 评论 (0) 编辑

SQL Server 2008中的hierarchyid
摘要: 这也是SQL Server 2008的一个重要新增特性。主要解决的问题是拥有层次关系的表格。例如我们日常生活中用到最多的组织结构图。我们一般会用一个Employees表保存员工数据,而每个员工则又可能...阅读全文

posted @ 2009-04-26 15:29 陈希章 阅读(345) | 评论 (0) 编辑

SQL Server 2008中的稀疏列和列集
摘要: 这是两个新增的特性。 关于稀疏列的详细介绍,请参考 http://msdn.microsoft.com/zh-cn/library/cc280604.aspx 关于列集的详细介绍,请参考 http:/...阅读全文

posted @ 2009-04-25 08:00 陈希章 阅读(100) | 评论 (0) 编辑

SQL Server 2008中的FileStream支持
摘要: 服务器有一个属性,即指定该服务器是怎么支持文件流的 /* 实际上文件流的出现就是为了解决对大对象的存储中一个矛盾。 对于大对象,第一种方式是存储在数据库里面,这种方式一般使用image字段,或者var...阅读全文

posted @ 2009-04-25 06:48 陈希章 阅读(1332) | 评论 (10) 编辑

URLRewriting for ASP.NET
摘要: 今天在看.NET 3.5 SP1的一些新增特性,其中提到了一个Routing组件,这个专门用来做URL重定向的组件,已经被使用在最新的ASP.NET MVC以及ASP.NET Dynamic Data...阅读全文

posted @ 2009-04-24 08:49 陈希章 阅读(110) | 评论 (0) 编辑

Mashup 【转载】
摘要: 本文转载自 http://zh.wikipedia.org/w/index.php?title=Mashup&variant=zh-cn 混搭(英语:Mashup)指整合网络上多个资料来源或功...阅读全文

posted @ 2009-04-24 06:15 陈希章 阅读(53) | 评论 (0) 编辑

REST 的知识 【转载】
摘要: 本文转载自 http://zh.wikipedia.org/wiki/REST 表象化状态转变(英文:Representational State Transfer,简称REST)是Roy Field...阅读全文

posted @ 2009-04-24 06:08 陈希章 阅读(124) | 评论 (0) 编辑

利用CodeDom和反射动态编译并执行程序集
摘要: 动态编译,听起来很酷,不是吗? 1. 什么是动态编译 所谓动态编译是由两个字组成的:动态+编译。很显然,我们是想实现临时地给出一段代码,然后将其编译成程序集(可以是在内存中,也可以是输出一个真正的dl...阅读全文

posted @ 2009-04-23 15:20 陈希章 阅读(145) | 评论 (1) 编辑

在C#中实现类似Eval这类动态求值的函数【转载】
摘要: 这是一个很平常的需求,就好比说,给你一个字符串,1+2+3, 要动态计算它的结果。在VBS或者JAVASCRIPT这种脚本语言中,都有一个Eval方法。但在C#或者VB.NET中却没有。今天想起来研究...阅读全文

posted @ 2009-04-23 14:33 陈希章 阅读(226) | 评论 (0) 编辑

行内数据
摘要: 所谓行内数据,最近在讲课中也提到了:SQL Server的行(Row)是不能跨页(Page)的, 准确地说,一行数据的长度最多是8060字节。那么对于那些超过大小的数据怎么办呢?按照正常的理解是,它们...阅读全文

posted @ 2009-04-23 12:07 陈希章 阅读(100) | 评论 (0) 编辑

SQL Server中的命名管道(named pipe)及其使用
摘要: 1. 什么是命名管道? 与TCP/IP(传输控制协议或internet协议)一样,命名管道是一种通讯协议。它一般用于局域网中,因为它要求客户端必须具有访问服务器资源的权限。 要解释这个问题,我还是摘录...阅读全文

posted @ 2009-04-23 11:22 陈希章 阅读(4920) | 评论 (1) 编辑

数组和集合的整理
摘要: 要学习.NET平台上面的数据结构和算法,那么就需要对System.Collections这个命名空间,以及System.Collections.Generic这个空间下面的一些类型比较了解。 我一般在...阅读全文

posted @ 2009-04-23 10:09 陈希章 阅读(162) | 评论 (0) 编辑

ArraySegment 的使用 【转载】
摘要: 本文转载自 http://www.cnblogs.com/overred/archive/2009/01/17/1359126.html ArraySegment顾名思义就是Array区块,数组的小抽...阅读全文

posted @ 2009-04-23 09:35 陈希章 阅读(128) | 评论 (0) 编辑

数据搜索算法
摘要: 排序和搜索是数据结构和算法学习中的两个最基本的操作。关于排序,我在上一篇已经做了比较详细的介绍,请参考 http://www.cnblogs.com/chenxizhang/archive/2009/...阅读全文

posted @ 2009-04-22 15:12 陈希章 阅读(409) | 评论 (0) 编辑

Array.Sort方法
摘要: 该方法采取的排序算法是快速排序算法。有关该算法的一些理论知识,如下 快速排序对冒泡排序的一种改进。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所...阅读全文

posted @ 2009-04-22 12:06 陈希章 阅读(1452) | 评论 (0) 编辑

ArrayList的动态扩展
摘要: ArrayList相比较Array来说,具有的优势是可以动态扩展,即它所包含的成员个数是不确定的,可以随着不断地添加,或者移除进行扩展。但我们一定要知道的是,ArrayList是基于Array(数组)...阅读全文

posted @ 2009-04-22 10:49 陈希章 阅读(51) | 评论 (0) 编辑

世界数位图书馆
摘要: 这是近日开始向全球免费公开的一个网站:http://www.wdl.org阅读全文

posted @ 2009-04-22 09:26 陈希章 阅读(42) | 评论 (0) 编辑

循环的效率问题
摘要: 经常有朋友争论循环中几种不同写法的性能差异。我觉得只要测试一下就大致知道了,用事实说话通常比较有说服力。经过测试,我发现这几种写法基本上性能差别不大。总的来说,foreach是会比较快的,优先使用之 ...阅读全文

posted @ 2009-04-22 08:51 陈希章 阅读(45) | 评论 (0) 编辑

sp_MSforeachtable和sp_MSforeachdb
摘要: 1)说明系统存储过程sp_MSforeachtable和sp_MSforeachdb,是微软提供的两个不公开的存储过程,从ms sql 6.5开始。存放在SQL Server的MASTER数据库中。 ...阅读全文

posted @ 2009-04-21 17:20 陈希章 阅读(340) | 评论 (0) 编辑

ToString 的几个思考
摘要: 1. 什么是ToString 我们知道.NET任何类型都是派生自object类型的。而object类型有一个方法:ToString。 顾名思义,就是将一个对象实例转换为一个字符串(String)。 2...阅读全文

posted @ 2009-04-21 11:37 陈希章 阅读(116) | 评论 (1) 编辑

安全和公共只读数组字段
摘要: 今天早上被问到一个诡异的问题,我们定义了一个静态只读的字段,是一个数组。根据理解,我们原以为这个数组肯定是只读的,但事实上却发现它是可以修改的。如下面的例子 public sealed class C...阅读全文

posted @ 2009-04-21 10:05 陈希章 阅读(44) | 评论 (0) 编辑

Microsoft Sync Framework
摘要: 今天在浏览网站的时候,注意到这个东西:中文应该可以翻译为同步框架。 有兴趣的朋友可以参考http://msdn.microsoft.com/zh-cn/library/bb902854.aspx Mi...阅读全文

posted @ 2009-04-21 07:43 陈希章 阅读(228) | 评论 (0) 编辑

SQL Server 2005两种快照隔离机制的比较
摘要: 总得来说,READ_COMMITTED_SNAPSHOT可能比较适合于原有数据库设计得相对复杂,不想做太多更改的情况下。它不需要去修改以前的存储过程。这其实是READ_COMMITTED隔离级别的一个...阅读全文

posted @ 2009-04-20 11:12 陈希章 阅读(161) | 评论 (0) 编辑

创建索引时应该考虑该列使用时最可能的排序方式
摘要: 在创建索引的时候,默认情况下,SQL Server会把每个键列的排序方式设置为升序。这没有什么理由,就是默认的情况。 但是,升序也许不是最合适的。假设你的索引列经常用来做降序排列,那么就不应该保留默认...阅读全文

posted @ 2009-04-20 10:23 陈希章 阅读(60) | 评论 (0) 编辑

T-SQL查询语句的执行步骤
摘要: T-SQL是需要优化的。而优化的前提是你对它的执行步骤有清楚的认识。我经常去给讲课或者咨询辅导的时候,就发现很多朋友对此了解甚少。下面截取了我的一个PPT,给大家参考一下 下面这个脚本可以解释这个过程...阅读全文

posted @ 2009-04-20 10:18 陈希章 阅读(135) | 评论 (0) 编辑

当SQL Server排序时遇上了NULL值
摘要: 这是一个经常被问到的问题。尤其是客户之前使用的是Oracle,那么他在使用SQL Server的时候会有一个疑问,就是在处理NULL值上面,SQL Server与Oracle的行为不一样 在Oracl...阅读全文

posted @ 2009-04-20 10:11 陈希章 阅读(386) | 评论 (0) 编辑

如果不写Order By子句,会怎么样
摘要: 我们都知道在T-SQL查询中,如果不恰当地使用了Order By子句,那么将严重影响到性能。很多优化顾问都会把尽量减少使用order by作为一条建议。 但又有人转念一想,如果我们在查询中不写Orde...阅读全文

posted @ 2009-04-20 09:37 陈希章 阅读(60) | 评论 (0) 编辑

尽量用属性(Property),而不是字段(Field)
摘要: 有几个原因导致我们推荐使用属性,而不是字段。 1、.Net对属性的支持远远大于对成员的支持,你可以对属性进行数据绑定,设计时说明等很多数据成员不被支持的内容 2、数据安全性检测; 3、线程同步 4、属...阅读全文

posted @ 2009-04-20 08:32 陈希章 阅读(51) | 评论 (0) 编辑

const和readonly
摘要: 在很多时候,或者很多朋友都认为const和readonly其实是一样的,它们都表示了一个不可变的值,也就是我们所谓的常量吧.它们的区别在于 const是编译时常量 readonly是运行时常量 那么...阅读全文

posted @ 2009-04-20 07:52 陈希章 阅读(81) | 评论 (0) 编辑

如果类型转换无可避免,那么应该尽可能用as运算符,而不是强制转换
摘要: C#是一个强数据类型语言。好的编程实践意味着当可以避免从一种数据类型强制转化为另种数据类型时,我们应该尽我们的所能来避免它。但在某些时候,运行时类型检测是不可避免的。在C#里,大多数时候你要为调用函数...阅读全文

posted @ 2009-04-19 18:45 陈希章 阅读(75) | 评论 (0) 编辑

EXCEPT 和 INTERSECT (Transact-SQL)
摘要: 这两个是SQL 2005增加的新语法,很有意思的。有兴趣的朋友可以参考 http://msdn.microsoft.com/zh-cn/library/ms188055(SQL.90).aspx 比...阅读全文

posted @ 2009-04-18 09:36 陈希章 阅读(101) | 评论 (0) 编辑

如何在ASP.NET站点中实现对用户请求的监控
摘要: 今天在讲课的间隙,有朋友问到这个问题:一个站点中,如果希望监控到用户请求的地址,不管是他通过在地址栏输入地址,还是通过点击链接来请求的。 要做这样的事情,其实重点是要理解APS.NET的HttpMod...阅读全文

posted @ 2009-04-17 23:21 陈希章 阅读(161) | 评论 (0) 编辑

再谈谈数据库镜像之客户端重定向
摘要: 这两天在讲数据库设计的时候,再一次提到了数据库镜像。其中也提到了数据库镜像对客户端其实不是完全透明的,这一点与群集有一些区别。 所谓不完全透明,就是说客户端程序还是要知道后端组成镜像拓扑的几台服务器的...阅读全文

posted @ 2009-04-17 07:21 陈希章 阅读(171) | 评论 (0) 编辑

SQL Server中的所有权链及其问题
摘要: 没有多少朋友对所有权链真的理解的。我自己有时候经常回过来看看这些资料,觉得还是很有意思的。下面的内容摘自微软文档,介绍得比较好 简而言之 1. 如果在同一个数据库中,只要两个对象的所有者是一样的,那么...阅读全文

posted @ 2009-04-16 07:43 陈希章 阅读(722) | 评论 (0) 编辑

标识列和GUID列
摘要: 在SQL Server的表中,可能会有两种特殊的列。一种是标识列(Identity),一种是全球唯一标识符(GUID) 首先看第一种 通过使用 IDENTITY 属性可以实现标识符列。这使得开发人员可...阅读全文

posted @ 2009-04-15 22:44 陈希章 阅读(375) | 评论 (0) 编辑

sysname数据类型是什么
摘要: sysname SQL Server 实例包括用户定义的名为 sysname 的数据类型。sysname 用于表列、变量以及用于存储对象名的存储过程参数。sysname 的精确定义与标识符规则相关;因...阅读全文

posted @ 2009-04-15 22:26 陈希章 阅读(1397) | 评论 (4) 编辑

SSMS 2008的智能感知仅仅针对SQL Server 2008的数据库有效
摘要: 早就听说了,SSMS 提供了编写T-SQL时的智能感知。但要注意一下,该功能,仅仅针对SQL Server 2008的数据库有效,而早期版本的数据库则没有任何反应 在工具菜单中还有一个选项来定制这个特...阅读全文

posted @ 2009-04-15 22:23 陈希章 阅读(1186) | 评论 (5) 编辑

log4net 的简单介绍 【转载】
摘要: http://blog.csdn.net/zhoufoxcn/archive/2008/03/26/2220533.aspx 说明:本程序演示如何利用log4net记录程序日志信息。log4net是一...阅读全文

posted @ 2009-04-15 21:50 陈希章 阅读(135) | 评论 (0) 编辑

SQL Server 2008的外围应用配置器到哪里去了
摘要: 在SQL Server 2005中,微软增加了一些新的工具,其中有一个就是“外围应用配置器”,它的主要目的是保证了服务器的默认安全性。 但这个工具在SQL Server 2008已经找不到了。原来是合...阅读全文

posted @ 2009-04-15 21:50 陈希章 阅读(5939) | 评论 (3) 编辑

SQL Server 2008 - Replication and Filestream, are both supported together?【转载】
摘要: SQL Server 2008 - Replication and Filestream, are both supported together? 本文转载自http://sqlserver-qa...阅读全文

posted @ 2009-04-15 21:49 陈希章 阅读(92) | 评论 (0) 编辑

网络编程之TCP/UDP及其流程比较
摘要: TCP与UDP的区别 基于连接与无连接 对系统资源的要求(TCP较多,UDP少) UDP程序结构较简单 流模式与数据报模式TCP保证数据正确性,UDP可能丢包TCP保证数据顺序,UDP不保证 具...阅读全文

posted @ 2009-04-14 17:02 陈希章 阅读(2192) | 评论 (0) 编辑

.NET平台网络编程之最佳实践 【转载】
摘要: 本文转载自 http://msdn.microsoft.com/zh-cn/library/zhzezf6d(VS.80).aspx System.Net 类的最佳做法 下列建议将帮助您最有效地使用...阅读全文

posted @ 2009-04-14 16:42 陈希章 阅读(64) | 评论 (0) 编辑