摘要: 几乎所有的大型应用都会有自己的用于跟踪调试的API。因为一旦程序被部署以后,就不太可能再利用专门的调试工具了。然而一个管理员可能需要有一套强大的日志系统来诊断和修复配置上的问题。 经验表明,日志记录往往是软件开发周期中的重要组成部分。它具有以下几个优点:它可以提供应用程序运行时的精确环境,可供开发人员尽快找到应用程序中的 Bug;一旦在程序中加入了Log 输出代码,程序运行过程中就能生成并输出日志信息而无需人工干预。另外,日志信息可以输出到不同的地方(控制台,文件等)以备以后研究之用。 Log4net就是为这样一个目的设计的,用于.NET开发环境的日志记录包。Log4Net是Apache开源. 阅读全文
posted @ 2011-11-25 16:40 孤星缀月 阅读(4183) 评论(5) 推荐(2) 编辑
摘要: 我对事务的认识还很少,以前我知道数据库中有事务的存在,而不知在我们的C#程序中也可以加入事务,在程序中实现。通过我的分析,在程序中的事务好像偏向于业务方面,而在数据库中的事务,便向于数据方面。对于事务中的锁,在此我并没有进行总结,仅是总结了一下事务的概念和事务的基本用法。数据库中的事务:(1):事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性。(2):事务通常是以BEGIN TRANSACTION开始,以COMMIT或RO. 阅读全文
posted @ 2011-11-25 14:44 孤星缀月 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 我们在运用Repeter绑定数据到RadioButton在前台生成单选按钮组的时候,我们可能会遇到生成的按钮并不能实现单选这种情况,即使你设置了GroupName属性,也不会起作用。这时我们就要借助于我们强大的JS了。代码如下:前台Repeter部分代码:<asp:Repeater ID="RepeaterYM" runat="server"> <ItemTemplate> <li> <asp:RadioButton ID="Year... 阅读全文
posted @ 2011-11-14 14:20 孤星缀月 阅读(860) 评论(1) 推荐(0) 编辑
摘要: 前几天在对网页页面进行布局的时候,遇到一个需要将网页的最下面一个层固定起来,不随网页的滚动条滚动,添加减少浏览器的菜单也不会变动的需求。对于DIV+CSS不熟悉的我,为此加班加点在项目上线时把问题解决了。参考代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/ 阅读全文
posted @ 2011-11-05 13:06 孤星缀月 阅读(691) 评论(2) 推荐(0) 编辑
摘要: WebService 传统上,我们把计算机后台程序(Daemon)提供的功能,称为"服务"(service)。比如,让一个杀毒软件在后台运行,它会自动监控系统,那么这种自动监控就是一个"服务"。通俗地说,"服务"就是计算机可以提供的某一种功能。 根据来源的不同,"服务"又可以分成两种:一种是"本地服务"(使用同一台机器提供的服务,不需要网络),另一种是"网络服务"(使用另一台计算机提供的服务,必须通过网络才能完成)。"网络服务"(Web Service)的 阅读全文
posted @ 2011-09-17 18:09 孤星缀月 阅读(4088) 评论(1) 推荐(4) 编辑
摘要: c#排序算法一、冒泡排序已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。首先比较a[1]与a[2]的值,若a[1]大于a[2]则交换两者的值,否则不变。再比较a[2]与a[3]的值,若a[2]大于a[3]则交换两者的值,否则不变。再比较a[3]与a[4],依此类推,最后比较a[n-1]与a[n]的值。这样处理一轮后,a[n]的值一定是这组数据中最大的。再对a[1]~a[n-1]以相同方法处理一轮,则a[n-1]的值一定是a[1]~a[n-1]中最大的。再对a[1]~a[n-2]以相同方法处理一轮,依此类推。共处理n-1轮后a[1]、a[2]、……a[n]就以升序排列了。优点 阅读全文
posted @ 2011-05-21 11:46 孤星缀月 阅读(749) 评论(0) 推荐(0) 编辑