文章


  今天写扩展方法,突然想到,其实扩展方法是静态方法,所以它和原有类中的方法是很不同的,对于扩展方法来说,即使对象为空,也是可以正确执行的,比如下面对于字符串数组的扩展方法:

public static string First(this string ss)
{
if(ss == null || ss.Length == 0)
{
...

(3723天前, 阅读:2769, 评论:4) [查看全文]

C# 3.0 的类构造器可以完成如下的方式:

public class User
{
public string Name;
public int Age;
public Date Birthday;
public bool Male;
}

public void Main()
{<...

(3749天前, 阅读:2735, 评论:2) [查看全文]

  这是我设计的一个轻量级的 .Net ORM (Object Relational Mapping) 数据访问及 WEB 框架。对于 ORM 和 Sql 调用,它都拥有清晰和易用的接口,目前支持 SqlServer、SQLite、MySql、Access、Firebird、PostgreSQL、Oracle 等数据库。对于 WEB 开发,它既支持 ASP.NET 2.0 的 DataSou...

(3865天前, 阅读:5868, 评论:9) [查看全文]

  本来以为只有非英语国家的程序被英语国际的人看的时候会有代码页问题,不过,还是发现,英语国家的人,也很喜欢使用一些不属于 ASCII 的特殊字符,结果造成那些代码被非英语国家的人使用的时候,也很麻烦。

  Visual Studio 缺省使用当前 Windows 代码页保存文件,实在是个不可思议的决定,不过,既然发生了,还是要解决。上网查了一下,奇怪的是,很多人问到这个问题,...

(3886天前, 阅读:4204, 评论:2) [查看全文]

  GridView 中好像也有一个 CheckBoxField,不过不知道怎么用,或者,它是只读的,所以不能告诉我们用户的选择,反正,这个问题需要自己解决。

  在网上搜索了一下,找到了一个我认为比较好的文章,用了一段都没什么问题,不过近来发现,其中的 JavaScript 部分,不支持 FireFox。

  查了一些资料,发现主要问题是 FireFox 不支持...

(3894天前, 阅读:3143, 评论:1) [查看全文]

  最近,把我的 DbEntry 的客户端源码控制改成了 VisualSvn + SvnBridge 的方式,感觉这种非独占方式 check-out 很适合广域网用户,只是 SvnBridge 还有一些不完善,于是,下载了它的源码版本,自己编译,在最近一次比较大的 check-in 之后,另一台机器执行 update 总是不成功,于是再去下载最新的 SvnBridge 源码,也没有效果,最后...

(3903天前, 阅读:3245, 评论:0) [查看全文]

  公司里同事说起,用 Java 开发的时候,进行语法检测的工具(CheckStyle?),有对于函数超长和文件超长的警报,而 FxCop 1.36 Beta2 却并没有带这些检查。想一想,这两种检测,对于编码习惯良好的人来说,意义有限,不过,对于需要协调许多人组成的团队来说,还是一个很好的方式。

  FxCop 提供了让我们自己定制规则的能力,虽然网上讨论的不多,还是找到一两...

(3948天前, 阅读:3201, 评论:3) [查看全文]

  以前,因为觉得一直没有这种有智能提示的IDE,想要自己写一个,也开始自己写语法分析器,后来才觉得,这种方法不可取,即使能写出兼容大多数 D 语法的分析器,然而要匹配 D 的各种版本,也是很麻烦,还不如直接使用 D 的前端来写。不过,使用 D 的前端也有一些困难,就是无法用 VC 编译,看了源代码,似乎是只支持 dmc 和 gcc 的,可能使用 gcc 编译成 dll 是一种比较好的方案。...

(3953天前, 阅读:2862, 评论:1) [查看全文]

  最近做一个广告系统,后台管理部分使用 ASP.NET,使用了 VS2008 + .Net 3.5,还是使用我写的 DbEntry 做数据库接口,页面部分大部分使用 ASP.NET Ajax 的 UpdatePanel 来进行更新,效果很不错,而且,速度上也感觉比普通的非 Ajax 页面快。

  而对于权限部分,使用页面级访问控制,读取 Web.Config 的方式,导航使用...

(3973天前, 阅读:3169, 评论:1) [查看全文]

  这两天用扩展方法用的很舒服,也发现了它的另一个限制,不能扩展“属性”。

  虽然,从本质上来说,属性不过是两个特殊命名的方法的一种快捷方式,不过,我试了几种写法,都没有发现有什么可能的迹象。

  失败的试验包括,自己写“set_PropertyName”和“get_PropertyName”,然后加标签。

  以上。

(3984天前, 阅读:2606, 评论:1) [查看全文]

 第一页 ... 26 25 24 23 22 21 20 19 18 ... 1