摘要: 在开始之前,先熟悉几个类及部分属性、方法:CSharpCodeProvider、ICodeCompiler、CompilerParameters、CompilerResults、Assembly。  一、CSharpCodeProvider    提供对C#代码生成器和代码编译器的实例的访问。如果要动态生成VB代码,可以使用VBCodeProvider。    CreateCompiler():获取编译器的实例。  二、ICodeCompiler    定义用于调用源代码编译的接口或使用指定编译器的CodeDOM树。每种编译方法都接受指示编译器的CompilerParameters对象,并返回 阅读全文
posted @ 2008-11-12 13:53 leonardleonard 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 不能确定动态代码编译在什么地方是有意义的?一个普通情况就应该可以帮助阐明这个问题。假如你不得不从一个数据库中取出数据并将它放入另一个数据库。你应该只需使用一个SQL语句从源数据库中选取数据并插入目标数据库中,这只是小菜一碟,对不对?如果你正在拷贝生产数据以生成测试数据并需要改变数据以确保目标数据在以后开发中使用是安全的又将如何?你可能会构建一个数据传输系统(DTS)或某个其它传输机制,但是如果你这样做超过足够多的数据,这就会变成你每次为拷贝数据建立数据-擦除(data-scrubbing)机制而消耗时间。你可以写一个应用程序来加工并生成测试数据,但是每次你在一个不同的应用程序上用它时你都将不得 阅读全文
posted @ 2008-11-12 12:25 leonardleonard 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 这是風語·深蓝很早以前写的一个正则表达式验证工具类,包含了一些常见的校验和支持自定义的正则表达式匹配,可以选择完全匹配,也可以获取所有匹配项。曾用它仿造Eclispe下的正则表达式插件写过一个工具。因为最近突然有几个朋友都在问这方面的问题,干脆就把代码贴出来好了。usingSystem;usingSystem.Collections;usingSystem.Text.RegularExpressions;namespaceXrinehart.Framework.Common.Validate{/**////summary///RegularMatch的摘要说明。 ////summary 阅读全文
posted @ 2008-11-12 09:27 leonardleonard 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 随着网站的运营,用户访问量和数据存储量会随着时间发生几何级变化,很快整个系统不堪重负,频繁出现问题。其实要设计一个高可用、高负载的系统还是有一定的规矩可循的,其手段无外乎向上扩展(Sacle Up 硬件扩展)或者向外扩展(Scale Out 软件扩展),这两种方案在某一阶段时期,会显著改善网站的性能,但不久之后,问题依旧。本文参考网上相关资料,试图提供一个可行的 "有限" 解决方案。早期1. 对业务应用进行垂直分割,将不同的业务边界划分出来。程序员常说的 "多层体系" 只是纵向解决了不同编程层次的划分,相对于业务而言,并没有做出什么处理。现在 SOA 大行其道,除了人们认识到面向服务带来的互联 阅读全文
posted @ 2008-11-12 09:11 leonardleonard 阅读(134) 评论(0) 推荐(0) 编辑