# Wednesday, November 12, 2008

    很荣幸在Tech.ED2008北京场的社区技术专场中,本人讲了一场《如何成倍提升企业级Web应用开发效率》的课程。这次讲座是第一次在Tech.ED场合讲座,不过作为非正式课程,我很高兴的看到不少人放弃了正式课程的内容来听社区技术专场的内容。也许是这类课程更贴近大家的工作吧,形式也不拘泥,大家可以面对面地探讨,气氛比较好。不过我的课程时间把握的不是太好,造成了后期给大家讲解的内容有点仓促,不是很细,希望参会的朋友们原谅。讲课过程中,发现听课的人逐渐增多,而且似乎开始就过来听的朋友们都没有中途离场的,这对我是莫大的鼓舞。我将努力在以后的日子给大家带来一些更好的内容,敬请关注哦:D

     在这里为大家提供本次课程的课件Demo文件下载,希望对大家能有所启发和帮助,如果能真正使得大家在企业级WEB应用开发过程中提高了不少效率,将是莫大的欣慰和荣誉。

Posted on Wednesday, November 12, 2008 1:29:00 AM (China Standard Time, UTC+08:00)  #    Comments [0]
# Sunday, May 25, 2008
最近给一些技术公司进行asp.net开发方向的培训,培训过程中曾发现一些简单的问题却几乎全军覆没的答错,而其中不乏一些曾在多年使用C#进行过项目开发的技术人员。比如说,我曾经出过一个题让参加培训的人员回答:int a=13/2的结果。技术人员的答案有以下几种情况
Posted on Sunday, May 25, 2008 2:38:00 PM (China Standard Time, UTC+08:00)  #    Comments [0]
# Thursday, January 31, 2008

在C#中有个较为重要,而常被一些人忽视的符号——问号(?)。在这里整理一下它在C#的几种情况:

  1. 可空类型修饰符“T?”:可空类型的基础类型可以是任何非可空值类型或任何具有struct约束的类型参数,但不能是可空类型或引用类型。例如:int?代表是可空的整形,而int??则是无效类型。即可空类型可以表示其基础类型的所有值和一个额外的空值。语法T?是System.Nullable<T>的缩写形式。可空类型具有一个HasValue的bool类型只读属性,当可空类型实例的该属性为true时,则表示该实例是非空实例,包含一个已知值Value;HasValue为false时,访问Value属性将导致System.InvalidOperationException。可空类型T?具有一个类型为T的单个参数的公共构造函数,如new int?(123)将获得一个值为123的int?类型实例。从T?到由T实现的任何接口都存在装箱转换,并且从由T实现的任何接口都存在到T?的拆箱转换。但是任何情况下可空类型都不满足接口约束,即使基础类型实现了该特定接口
  2. 条件运算符“x ? y : z” : “x ? y : z”的意思大部分程序员应该都熟悉,稍微啰嗦一下:) 如果表达式x为true,则计算y;如果x为false,则计算z。省却if{}else{}的简单形式了。
  3. 空合并运算符“??”:该运算符是在泛型出现后,C#词法语法中新增加的标记,同时出现的还有一个“::”(命名空间别名限定符)。形式为“a??b”的空合并表达式要求a为可空类型或引用类型。如果a为非空则表达式“a??b”返回的结果为a;否则返回b。空合并运算符为结合运算符,即操作时从右向左进行组合的。如,“a??b??c”的形式按“a??(bb??cc)”计算。

曾有人说过“细节决定胜负”,我们程序员应该更好的把握编程语言的细节才能更好的保证软件质量。

特此整理存档:D

Posted on Thursday, January 31, 2008 4:31:34 PM (China Standard Time, UTC+08:00)  #    Comments [0]
# Friday, October 19, 2007

youku0.3     近日党的十七大召开,而我没有电视看,就喜欢到优酷网上看看别人上传的相关视频,部分视频希望能在机器上有所保留,但优酷自己并不提供文件的下载功能。找了个维棠FLV视频下载软件,却发现它无法完整下载较长的优酷视频,我稍作了原因分析后,发现是优酷的一些较长的视频是采用多文件连播的方式,也就是一个视频由多个文件共同组成,于是乎自己花了一大袋烟的工夫用c#写了这个小工具,直接将视频所在的网页地址复制到该软件的指定位置,然后点击“Go!”按钮就开始下载了,哈哈……
    鉴于支持和促进和谐社会发展,俺也把这个自写小工具共享出来给朋友们使用。由于时间仓促,有一些不完善的地方敬请原谅,抽空俺也会继续更新这个小工具的:D

声明:本软件仅因个人爱好而开发,跟优酷网无任何关系:)

名     称:优荡
当前版本:0.5
环     境:Windows ,Microsoft .NET Framework 2.0
作     者:衣明志(网名:qihangnet)
最近更新:
             2007年10月19日(0.5.0.0版):
                          代码进行进一步优化
                          加快了视频分析速度
                          显示视频文件总大小
                          显示当前已下载文件文件大小
                          显示下载总进度的进度条
                          添加了单视频的多文件自动合并功能(一些视频优酷使用多文件存储的,本软件下载后将同一视频的多文件进行的无缝合并,并随后删除原始文件)
                          修复了多项小Bug
             2007年10月17日(0.3.0.1版):
                          修复了2个界面上的小bug
下载地址:http://www.qihangnet.com/content/binary/YouDown.exe

Posted on Friday, October 19, 2007 1:52:30 AM (China Standard Time, UTC+08:00)  #    Comments [3]
# Wednesday, June 13, 2007
asp.net 2.0中引入的Membership机制给我们做web开发带来很多便利,使得我们在做很多项目开发时处理用户和角色及权限问题时减少了相当的工作量。不过我们开发中可能会碰到一个小小的问题
Posted on Wednesday, June 13, 2007 2:41:02 PM (China Standard Time, UTC+08:00)  #    Comments [0]
# Saturday, May 05, 2007
最近不少Web技术圈内的朋友在讨论协议方面的事情,有的说web开发者应该熟悉web相关的协议,有的则说不用很了解。个人认为这要分层次来看待这个问题,对于一个新手或者刚入门的web开发人员而言,研究协议方面的东西可能会使得web开发失去趣味性、抹煞学习积极性,这类人应该更多的了解基本的Web技术使用。而对于在该行业工作多年的老鸟来说,协议相关的内容、标准相关内容应该尽量多些的了解,因为只有这样才能使得经手的web系统更加优秀(安全、漂亮、快速、兼容性好、体验好……)。本文我们来说一下MIME 协议的一个扩展Content-disposition。
Posted on Saturday, May 05, 2007 3:03:14 AM (China Standard Time, UTC+08:00)  #    Comments [0]
# Tuesday, January 02, 2007

 将VS2003下的一个Web项目升级到VS2005后,去除明显错误后编译测试运行。某页面发现一个问题:

“/”应用程序中的服务器错误。

分析器错误

说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。

分析器错误信息: 发现不明确的匹配。

这个问题发生原因一般情况是:

aspx页面里面的控件有与您的aspx.cs里的类变量重名(不区分大小写)的ID

那么我发现在代码中有如下的声明:

protected System.Web.UI.WebControls.Label BlogID;
protected System.Web.UI.WebControls.Label blogID;

blogID在前台控件中不存在,仅在cs代码中声明了,因此产生了上述的问题。

 

由此看来虽然,C#等语言中允许我们使用大小写不同来声明不同的变量,但是我们应该尽量避免这样的情况,使用完全不同的名字区分不同的变量为好啊。

Posted on Tuesday, January 02, 2007 10:50:23 PM (China Standard Time, UTC+08:00)  #    Comments [2]
# Sunday, August 27, 2006

String.Split 方法:标识此实例中的子字符串(它们由数组中指定的一个或多个字符进行分隔),然后将这些子字符串放入一个 String 数组中。

Regex.Split 方法:在由正则表达式匹配项定义的位置将输入字符串拆分为一个子字符串数组。

上面的两个Split方法,在使用单字符拆分字符串的时候效果一样。然而在使用多个字符拆分字符串时,就有所区别了:

Srting.Split(字符串.ToCharArray())得到的结果往往不是我们希望的结果。所以在此推荐使用Regex.Split方法处理使用多字符拆分字符串。

Posted on Sunday, August 27, 2006 11:45:34 AM (China Standard Time, UTC+08:00)  #    Comments [0]
# Friday, November 11, 2005

VS2005目前还没有官方正式的简体中文版本,这个安装包是我从SQL2005CTP版的安装包里抽取出来的,中文化已经非常高了,特别是在vs2005的起始页的社区文档也成了调用msdn中文网站的了。很不错。

点击下载(约55M)

下载完以后请将文件的扩展名.zip修改为.iso,然后运行其中的vs_setup.msi文件。

注意:安装过程没有进度窗口,安装完毕会显示一个安装完成的提示窗口。

Posted on Friday, November 11, 2005 12:59:32 PM (China Standard Time, UTC+08:00)  #    Comments [7]
# Friday, October 28, 2005

孙展波的博客上看到了一个则令人激动的消息:

2005年10月27日上午微软RTM了Visual Studio 2005和.NET Framework 2.0。

MSDN订户将可以在今天晚些时候下载Visual Studio 2005的各个版本。非MSDN订户可以在Microsoft Download Center下载.NET Framework及其SDK。在11月7日之后,非MSDN订户还可以下载Visual Basic, Visual C#, Visual C++, Visual Web Developer, Visual J#, 和SQL Server的Express版本。

我激动不已,于是下载VS2005旧版卸载软件将Beta2的卸载了,可惜卸载完毕才想起来还没有搞到RTM版的安装程序呢:(

只好等开心下个月给俱乐部带来VSTSBeta3再说吧,~~如果是MVP多好啊:)

Posted on Friday, October 28, 2005 11:02:41 AM (China Standard Time, UTC+08:00)  #    Comments [0]