为已有的 WebForm 项目引入 Asp.Net MVC 框架

Asp.Net 的项目多数还是应用的 WebForm 进行开发,MVC 框架随着在其他语言中的兴起,也进入了 Asp.Net 领域,那就是 Asp.Net MVC,现在的正式版本是 2.0,已经出了 3.0 Preview 版的。

WebForm 对于小项目的快速开发还是很方便的,对应对业务逻辑复杂而庞大的项目时,分层就很有必要的,MVC 恰到好处的层次结构,让人艳羡的。除此之外,应用了 MVC 框架的项目可测试性是 WebForm 无法比拟的,开始可以很好的进行单元测试了。 阅读全文 >>

XSLT 中用 JavaScript 自定义函数处理参数

曾经写过一篇 XSLT 文件中使用C#/JScript/VB 自定义函数 怎么用 C#/JScript/VB 在 XSL/XSLT 中自定义函数。那时候原本想直接用 JavaScript 来自定义函数,因为 JavaScript 哪台机器上都能跑,但出了些问题,所以实际中是用的 C# 自定义的 XSLT 函数。

这样的问题无论从哪方面讲都一直回避不了,情况是如果在 JavaScript 定义函数中直接把传入的参数返回是没问题的,但要作任何的处理,或者调用 JS 函数都会失败。XSLT 中的自定义函数,不对参数进行加工处理是没有意义的。比如在 XSLT 中写如下函数: 阅读全文 >>

C# 如何连接操作 MySQL 数据库(使用 SourceForge 上的驱动)

前面一篇 http://unmi.cc/csharp-operate-mysql-1 讲了 C# 里用 MySQL 官方驱动怎么去连接操作 MySQL 驱动,就是 MySQL 的 JDBC 驱动有两个一样,针对 .NET 的 MySQL 驱动也有两个。这里介绍的就是 .NET 连接 MySQL 的第二个驱动,来自于 Sourceforge 的开源驱动。

首先,到 http://sourceforge.net/projects/mysqldrivercs/ 下载,写此篇时下载的版本是 MySQLDriverCS-n-EasyQueryTools-4.0.1-DotNet2.0.exe。安装,其中带有源代码和例子,只有三个动态库 libmySQL-4.0.dll、libmySQL.dll、MySQLDriverCS.dll,光看动态库好像不及官版的驱动强大。把安装目录中的 MySQLDriverCS.dll 引入到你的 C# 项目中就可以开始用了。具体用法还需时刻关注安装目录中的 help\SDK\Documentation.chm 帮助文档。 阅读全文 >>

C# 如何连接操作 MySQL 数据库(使用官方驱动)

MySQL 以其免费和足够的性能受到很大的青睐,当然对于国内小公司,甚至是大公司如果对版权看得薄,敢冒险的话,随便装个 SqlServer、DB2、Oracle 都行。对于 SqlServer 数据库,因其与 MS 是一家,自然在 .net 类库中有内建支持,假如 MySQL 就得找第三方的驱动了 -- .net 中多讲 Provider。在这里我也是作为一个预研专题,记录下 C# 连接 MySQL 的两种方法,分别使用 MySQL 官方的和 SourceForge 上一个开源的 MySQL 驱动。至于 ODBC 的办法,就不提了,觉得意义不大,同样要安装个 MySQL ODBC 驱动,而且 ODBC 又如此之笨拙。

使用 MySQL 官方区动连接操作 MySQL 数据库 阅读全文 >>

FeedBurner 不能用了,还有 FeedSky,附个相关插件

FeedBurner 是一个很好的 Rss Feed 托管服务,它能让你详细获悉 Feed 的订阅情况,可是大概是因为 FeedBurner 成了消息快捷传播的通道,让某些人谎了神,而被伟大的墙禁了。针对我们的中文网站多数读者是中文语言的,所以 FeedBurner  这条路是走不太通了,只得找个替代品。

Google 上搜索了下,国内有个 FeedSky 做了类似的事情,比起 FeedBurner 可能还没那么专业,或者能很好的适应中国国情。于是我到 FeedSky 上申请了自己的 Feed: http://feed.feedsky.com/unmi。如果用户是通过这个Feed 的代理来的,我们可以在 FeedSky 上了解到我们网站的 Rss 的阅读订阅情况 。 阅读全文 >>

form.action 怎么就不能设置表单的处理页了呢?

一个网页里时常会写多个提交按钮,可以点击不同按钮时分别设置某个隐藏域的值,都是提交到同一个页面,然后在处理页面可以知道应如何区别对待。也可能各自的 onclick 事件中改变 form 的 action 属性指向不同的处理页面后提交表章。在处理表单页面逻辑复杂且无多少相关性的时候,我会选择后一种处理方式。

可以今天碰到一个事情,在点击某个提交按钮,欲用(假设 form 的 id 为 'post')

document.getElementById('post').action='http://unmi.cc/some' 阅读全文 >>

在 WordPress 的 Header 或 Footer 中加入代码的插件

做了个站点,一下想随时了解站点被访问的情况,或者进行 SEO。比如用 Google-Analytics, 也可能用了其他的站点统计服务,那就要求在页面中植入一段 JS 代码,如果每次有新需求都打开主题的 footer.php 文件来改就有点麻烦些。也存在往 header.php 中加入些信息的情况,比如 meta, css, js 等, 如果有个插件统一来管理有容易得多,省得直接改文件。

去 WordPress 中搜索 Footer 就能看到一些解决此问题的插件,有好几个。类似的东西多了也好让人眼花的,就像商场里买东西,太多的选择反而使人犹豫不决。我找了下,有以下几个插件: 阅读全文 >>

给 TinyMCE 添加一个语法加亮插件的工具按钮

前面已有几篇讲了有关 WordPress 的语法加亮的插件,谁让我的日志中代码特别多呢。在此之前我都是要把编辑器切到 HTML 模式,然后写上 <pre class='brush:java'>CodeHere</pre>,然后回到 Visual 模式,最后贴上代码,麻烦就在于模式切换。如果能给 TinyMCE 编辑器加个按钮,点击后弹出窗口中选择语言类型,贴入代码,不用切换就能加亮你的程序代码就好,这里就是说这个的,当然你要是用 [ code lang='java']CodeHere[/code] 这样的 BBCode 来张贴代码倒简单些。 阅读全文 >>

关于 URL 的一些不可不知的知识

URL 设计是 Web 设计中常被忽视的东西,事实上 URL 非常重要,这不仅是一个网页唯一的路径,还涉及到你的站点是否干净,友好。本文讲述 URL 这个司空见惯的 Web 元素中包含的大量不应为忽视的知识,准则与最佳实践。需要注意的是 W3C 建议使用 URI 取代 URL 一说

关于 URL 的一些准则

首先是与 URL 有关的一些准则。

一个 URL 必须唯一地,永久地代表一个在线对象

URL 的最基本的使命是唯一地代表 Internet 上的一个对象,URL 必须和 Internet 上的对象一对一匹配。然而 阅读全文 >>

为语法高亮插件 SyntaxHighlighter Evolved 进行优化

前面有一篇 用 SyntaxHighlighter Evolved 作为自已的代码加亮插件 介绍了 SyntaxHighlighter Evolved 插件。当前所用的版本是 2.3.8,  我现在是用 <pre class='brush:java'>code here</pre> 的形式来加亮代码,所以必须选上后台的 Load All Brushes 选项,用 [ code lang="js]code here[/code] 会动态的加载所需的 shBrushXxx.js 文件。后一种方式会有些问题,因而这里也是针对前一种方式来进行优化的,因为 Load All Brushes 选项一旦选上,页面将会依次:

<script type='text/javascript' src='...shBrushAS3.js?ver=2.1.364b'></script>
<script type='text/javascript' src='...shBrushBash.js?ver=2.1.364b'></script> 阅读全文 >>