- 不管是隐藏信息还是搜索引擎友好,UrlRewrite 还是很有用的。我们可以在应用服务层实现 UrlRewrite,比如 Apache 或 IIS;也可以在应用程序层实现 UrlRewrite。Java 有很好的组件实现,.Net 中可以用 UrlRewriter.NET 来实现。看 Asp.Net MVC 引入 Routing 的概念,不过幸运的是我们不必搞个 MVC 项目也能享受到 Routing,那就是 .Net 3.5 已经为 MVC 做好准备的 System.Web.Routing。
差点忘了轻带一下什么是 UrlRewrite,比如说: Read More 
前一篇 C# 使用 iTextSharp(4.1.2) 生成 PDF 文档 写了一个用 iTextSharp 4.1.2 生成 PDF 文档的例子,由于新版 iTextSharp 5.0.2 变化太大,所以有必要再记录一下。比较两篇你可以很明显的感觉到它们之间 API 上的差异来。 Read More
在 Java 里操作 PDF 文档的组件首当其充就是 iText,几乎是不二之选,惯性思维到 C# 里应该有一个相应的实现吧,对了,那就是 iTextSharp,这里来看看 iTextSharp 怎么生成一个 PDF 文档的。此篇所选版本是 iTextSharp 4.1.2,因与 iTextSharp 5 有较大的差别,所以分两篇来说明。
这两个版本的主要区别有,iTextSharp 5 里不再有 iTextSharp.text.Table、HeaderFooter 类的,且实现了自己的 Font, Color,不再依赖于 System.Drawing 了;在设置页眉页脚实现也不一样。
下面例子,用 OLDDB 从一个 Excel 里读取第一个 sheet,然后在 PDF 文档里生成张表格: Read More
ExcelLibrary 是一个比较精致的 Excel 读写组件,还是由国人开发的,下载地址:http://code.google.com/p/excellibrary/。可以读写 xls 和 xlsx 格式的 Excel。支持简单的公式,可插入图片,对于格式的设置也不是很丰富,可设置单元格宽度,数据格式化显示。对字体,前景、背景色进行设置是它的局限性。虽比不上 NPOI,但作为小巧的用来读写纯数据内容的 Excel 还是很高效的。
具体的例子,可以考看它的测试代码:ExcelLibrary.Test\SimpleTest.cs。这里 Read More
前面写过一篇关于 Java 中使用 Velocity 模板的文章: 掌握一种Java模板技术 -- Velocity, 现在要考究一下 C# 中怎么使用相应的 nVelocity 模板。
当目光转移到了 C#/.Net 之后,但凡想要找个某个功能组件时都会联想到,曾经在 Java 中用过什么,.Net 中应该会有它相应的实现, 例如 Spring.Net, nHibernate, iTextSharp,还有这里的 nVelocity,特点就是组件名一般是 .Net 结尾或 n 字打头。
还是依照原来的例子,从 http://sourceforge.net/projects/nvelocity/files/ 下载 nVelocity 组件,当前版本是 NVelocity-0.4.2.8580。 下载后解压,在你的项目中引入 build 目录中的 NVelocity.dll,如果是 web 项目中用 nVelocity,可附加引入 NVelocity.Http.dll。 Read More
- 为一个控件绑定多个验证器那是很正常的,例如一个邮件输入框,首先它不能为空,其次不为空时邮件地址必须符合一定的规则,介于此,我们会依次放两个验证器,RequiredFieldValidator 和 RegularExpressionValidator。由于输入为空的时候对于 RegularExpressionValidator 是被认为通过的,所以同时只会显示其中一个验证器的错误信息。
再看个需求,比如输入邮件地址和再次确认的邮件地址,这时需要为第二个邮件输入框加除上两之外的第三个验证器 CompareValidator 用于验证两次输入是否一致,那么三个验证器依次是:
RequiredFieldValidator RegularExpressionValidator CompareValidator Read More
差不多在 3 年前我就关注过 SQLite,也整理了一篇 SQLite 的介绍:开源嵌入式数据库 SQLite 简介, 还在我的一个查手机归属地软件中使用了 SQLite 数据库,http://unmi.cc/csharp-use-sqlite-db/。
现在又要用到 C# 了,所以决意了解下 C# 中如何使用 SQLite,之所以选择 SQLite 作为自己的文件型数据,主要是看中它的非常小型、单文件、嵌入型,更支持多进程访问。
SQLite 官方网站:http://www.sqlite.org,你可以在那里下载到一个 sqlite3.exe,用命令行模式来管理你的数据库文件。或用其他比较好的管理工具:sqliteman(也支持 UTF-8) 、sqlitebrowser 和 SQLite Administrator。我比较喜欢 sqlitebrowser,但更推荐可设置字符集的 SQLite Expert(可下载到免费的个人版)。 Read More- 你们中有许多人可能已经听到过有关CSS3的不少传言,但是我们现在能真正用到的CSS3技巧又有哪些呢?本文,我将向你展示一些与众不同的 CSS3技巧, 这些技巧在一些主要的浏览器中表现良好(如Firefox,Chrome,Safari,Opera浏览器)。这些效果会在不支持的浏览器中降级渲染(如IE浏览器)。使用浏览器特定的声明,许多提议的CSS3样式都可以马上拿来使用。

如果你不知道浏览器的特定声明是什么,你只需要记住它们都是CSS样式属性前与内核提供商有关的特定前缀。因为CSS3目前还没得到全面的支持,所以我们需要使用这些特定声明。具体的形式如下:- Mozilla/Firefox/Gecko浏览器的前缀: -moz-
- Webkit (Safari/Chrome)浏览器的前缀: -webkit- (注意:一些Wbkit的前缀只能在Safari下使用,Chrome不支持。)
你可能已经看到了,使用这些声明的有一个缺点,那就是如果我们想在Firefox,Safari和Chrome中都得到CSS3的效果,我们需要使用到上面所有这些前缀。也不用惊讶,IE浏览器不支持CSS3,因此也就不像其他主要浏览器有一个特定的前缀声明。
Read More - 支持 CSS3 和 HTML5 的浏览器越来越多,甚至包括最新版的 IE,当然,所谓支持仅仅是部分支持,因为 CSS3 和 HTML5 的W3C 规范都尚未形成。如果你现在就希望使用 CSS3 和 HTML5 创建你的站点,至少要对各个浏览器对这两种新技术的支持情况有一个全面了解。
需要指出的是,即使同一个浏览器的同一个版本,在 Mac 和 Windows 两个平台,它们对 CSS3 和 HTML5 的支持也并不一致。本文是一份 Chrome, Safari, Firefox, Opera, IE 5 大浏览器,在 Mac 和 Windows 两个平台,对 CSS3 和 HTML5 各种功能的详细支持情况清单。 Read More 原来是仿照 JavaEye 那样对 name 为 code 的 <textarea> 以指定的样式类进行格式化显示,效果如下图:

优点:1. 比较清爽
2. 可以选择局部进行复制,不会带上前面的标号
缺点:1. 使用 <textarea> 在其他浏览器上不利于输入和修改 Read More