摘要:
用NHibernate做数据访问时,有时候需要做对所作的操作进行记录。比如说:记录什么时候被谁创建, 以及最近由谁在何时更新,甚至谁最近查询了记录。传统的做法是在代码里面各处分散地写,通过nhibernate的interceptor接口,我们可以用类似aop的方法来优雅的解决。代码定义如下: public class AuditInterceptor:IInterceptor { #region ... 阅读全文
摘要:
表如下:CREATE TABLE [dbo].[Category]( [Id] [int] IDENTITY(1,1) NOT NULL primary key, [CategoryName] [varchar](254) COLLATE Chinese_PRC_CI_AS NOT NULL, [ParentId] [int] NULL)ALTER TABLE [dbo].[Category] W... 阅读全文
摘要:
数据库为sql server2005,表名order为关键字,开始直接写fromula= (select sum(o.Price) from [Order] as o where o.CustomerId=Id)运行后程序报错,查看sql发现其会生成如下代码:(select sum(o.Price) from customer0_.[Order] as o where o.CustomerId=c... 阅读全文
摘要:
先看下面的一段代码:public class UserTest { public int age { set; get; } public string name { set; get; } }这是准备 json序列化的类,用mvc框架提供的json方法,很快就可以完成,代码如下: public ActionResult TestAjax(int? page) { UserTest t... 阅读全文
摘要:
上篇写了《一种客户端导航菜单的实现方法》http://www.cnblogs.com/healer_zll/archive/2009/12/07/1618799.html由于时间仓促,只给出来思想,用c#模拟实现了下。今天正好有时间,就用js真正实现了下,算是补全上篇吧。以下为实现代码,思想和上篇一样,也就不多做解释:$(document).ready(function() { var pagin... 阅读全文
摘要:
开源网页编辑软件FCKEditor在09年发布更新到3.0,并改名为CKEditor。改进后的ckeditor更加模块话,配置更加灵活,和以前的fckeditor使用方式上也有所不同。在我的mvc项目中由于要用到 ckeditor,特意研究了下它的使用方法,写下来和大家分享。我用的是最新版本的:ckeditor_3.0.1 下载地址:http://ckeditor.com/ 下载后直接解压得到ck... 阅读全文
摘要:
下图是目前比较流行的客户端导航菜单,几乎随处可见:这个菜单的核心思想是让用户选择的页(即当前页)尽量居于菜单的中心。如自己想了个算法,和大家分享下。主要思路:菜单应在客户端用js脚步动态生成,生成菜单应从服务器端接受三个参数:pageCount:分页的总页数currentPage:当前页showpage:导航显示的页数,为一常数值(上图例中为4)分两种情况考虑:1、分页总页数 小于导航显示的页数此... 阅读全文
摘要:
目前,将需求从客观现实世界映射到计算机软件世界主要有两种方式:传统数据库分析设计和面向对象建模( object-oriented class model), 当前软件主要潮流无疑是面向对象占据主流,虽然它可能不是唯一最好最简单的解决方案,但是它是最普通,也是最恰当的。
也就是说:在分析设计阶段,采取围绕什么为核心(是对象还是数据表为核心)的分析方法决定了后面编码阶段的编程特点,如果以数据表为核心进行分析设计, 也就是根据需求首先得到数据表名和字段,然后培训程序员学会SQL语句如何操作这些数据表,那么程序员为实现数据表的前后顺序操作,必然会将代码写成过程式的风格。
相反,如果分析设计首先根据需求得出对象模型(class Model),那么程序员使用对象语言,再加上框架辅助,就很顺理成章走上OO编程风格。至于OO代码相比传统过程编码的好处不是本文重点,可参考J道(jdon.com)相关讨论,扩展性和维护性好,开发越深入开发速度越快无疑是OO系统主要优点。 阅读全文
摘要:
namespace ThreadTree { class Program { static void Main(string[] args) { ThreadBinaryTree tree = new ThreadBinaryTree(); tree.InitialTree(@"a(b,c(d,... 阅读全文
摘要:
Code Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->namespace MaxHeap { class Program { static void Main(string[] args) ... 阅读全文