09 2011 档案
摘要:本文内容 JSON 概述 JSON 结构 JSON 格式 简单表示字符串、数字、布尔型和 null 数组字面量——用 JSON 表示数组 对象字面量——用 JSON 表示对象 混合字面量 JSON 的编码与解码 JSON 概述 JSON(JavaScript Objec...
阅读全文
摘要:本文内容 本文旨在说明客户端向服务器如何发送数据,以及服务器如何接收。虽然这种实现方式现在已经看不到了,但是这种机制是不变的,已经变成了一种底层实现,所以还是有必要了解的。 ASP.NET Get 与 Post 方式 ASP.NET Request.querystring、Request.Form 和 Request.Params 比较 示例 ASP.NET 原始请求(HTTP Get) 与回发(HTTP Post) 方式 原始请求(HTTP Get)方式是从服务器上获取数据,主要用于查询;回发(HTTP Post)方式是向服务器传送数据,主要...
阅读全文
摘要:本文内容 虽然现在的 Ajax 框架很多,直接用就好了,但还是有必要了解一下它内部的实现机制。 促使 Ajax 产生的 Web 技术演化 隐藏帧技术 隐藏 iframe 技术 促使 Ajax 产生的 Web 技术演化 超文本和 URI HTML JavaScript frame 隐藏帧技术(frameset) DHTML 和 DOM 隐藏 iframe 技术 XMLHttp 和 XMLHttpRequest 超文本和 URI,通俗一点就是文本和链接,只是为了创建一个彼此关联的信息网,毕竟...
阅读全文
摘要:本文内容 本文的内容只是给自己留一个手册,其实 W3school 有。 HTML 支持的数学符号 HTML 支持的希腊字母 HTML 支持的其他实体 HTML 支持的数学符号 结果 描述 实体名称 实体编号 ∀...
阅读全文
摘要:本文内容 什么是持久层 为什么要持久层 持久层框架 什么是持久层 理解持久层,可以看它的英文——Persistence Layer。“持久(Persistence)”和“层(Layer)”。在我看来,“持久”更多涉及的是底层结构,而“层”更多涉及的是逻辑层面、软件设计。 在计算机早期,数据的存储只能在内存里,没有外部介质可以长期保持数据或代码,因此不能在需要时读取或是执行。看看现在,你几百个...
阅读全文
摘要:前边三篇介绍如何调用页面,也就是,从一个页面重定向到另一个页面。既然我们要从一个页面定向到另一个页面,那么自然就涉及传值问题。下面介绍页面传值。 如果您的应用程序从一个 ASP.NET 网页重定向(导航)到另一个 ASP.NET 网页,您经常希望将信息从源页传递到目标页。例如,您可能具有一个页面,用户可以从中选择要购买的商品。当用户提交该页时,您希望调用其他页,以处理用户输入的信息。 ...
阅读全文
摘要:通常有必要了解调用 ASP.NET 网页的方式:是由原始请求(HTTP GET)、回发(HTTP POST)、来自其他页的跨页发送(HTTP POST)调用的,还是由来自其他页(使用 Transfer 方法或使用浏览器中的回调)的传送调用的。Page 类公开可用于确定页调用方式的属性集。 检查以下 Page 类属性的值,然后参照下表来确定页的调用方式: IsPostBack ...
阅读全文
摘要:您可能希望将用户从一个 ASP.NET 网页重定向到另一个网页。例如,可能会在多页窗体中执行此操作。重定向页的方法很多,比如以下方法: 通过动态使用浏览器。在此方案中,向用户的浏览器发送命令,使浏览器检索其他页。采用这种方法,能以编程方式重定向到另一页。但是,这种重定向会导致新的请求 (HTTP GET),并且从源页发送的所有数据都将丢失。 通过将页配置为发送到另一页。在此方案中...
阅读全文
摘要:本文针对 Visual Studio 2008,但 Visual Studio 2005 与此差不多。请自行参考MSDN http://msdn.microsoft.com/zh-cn/library/x3x8t37x(v=VS.90).aspx 。我们经常需要将用户重定向到 Web 应用程序的其他页。重定向也意味着要传值给目标页面。ASP.NET 提供了下列在网页中生成重定向的方式: ...
阅读全文
摘要:本文演示在VMware 6.5上安装Linux系统。 n 运行VMware。如图1所示。 图1 点击“New Virtual Machine”,创建一个新虚拟机。出现如图2所示窗口。 n 配置安装类型。 图2 选择“Custom”,自定义安装,点击“Next”,出现如图3所示窗口。 Typical Compar...
阅读全文
摘要:问题 洗牌程序。52张牌(不算大小王),一个人随机地洗牌,每次结果都不同。 分析 随机数的使用。计算机不可能产生完全随机的数字。所谓随机数发生器都是通过一定的算法对事先选定的随机种子做复杂的运算,用产生的结果来近似地模拟完全随机数,这种随机数被称为伪随机数。伪随机数是以相同的概率从一组有限的数字中选取的。所选数字并不具有完全的随机性,但从实用的角度而言,已经足够了。伪随机数的选择是从随机种子开始,所以为了保证每次得到的伪随机数都足够地“随机”,随机种子的选择很重要。如果随机种子一样,那么同一个随机数发生器产生的随机数也会一样。一般地,我们使用系统时间有关的参数作为随机种子,这也是....
阅读全文
摘要:本文内容 实现工厂方法 工厂方法作用 工厂是一种通用的构造函数,用来创建任何不同的对象。你必须用一个静态方法来实现工厂,而不能用一般的构造函数。 工厂可以应用在数据库工厂或是业务工厂,等等。 实现工厂方法 你可以用很多方式来实现一个工厂: 1) 用一个 switch 语句(也许很大、很多的 case),来选择合适的构造函数。 2) 用 Hashtable...
阅读全文
摘要:本文内容 概述 设计理念 应用场合 interface vs. abstract class 修改记录 概述 网上大多数资料,在比较 interface 和 abstract class 区别时,往往是先从语法,然后实现(编程),最后是设计理念和应用场合。我觉得这样不妥!设计理念才决定了,它们在语法、编程和应用上的差异。 另外,作为 C# 程序员的我,开始会忘记——继承 abs...
阅读全文
摘要:在我职业之初,我想得最多的是:当调用一个方法时,传入的参数,我是进入该方法前检查呢?还是进入到该方法后检查?特别是在某个方法中,为了保证该方法能顺利执行,之前的条件检查、if…else…简直是噩梦。所以我会想:至于吗?有必要这样做吗?哇,这个问题让我纠结了好长时间。其实,问题本身并不难,只是需要抽象出一个理念,或是原则,然后一直这样做。后来,我为自己定个原则:在进入方法前,进行严格检查;而进入到方...
阅读全文
摘要:问题 猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒。 分析 从这句话,我们可以获得两个信息: 涉及到三个角色,猫,老鼠和主人。因此,显然要定义三个类Cat,Mouse和Master。至于这三个类之间的关系,看你如何选择实现的方式; 当猫发出一个动作时,老鼠和主人都会做出自己的反应。因此,第一个能够想到的实现方式是事件委托方式。但是设计模式中,有一个观察者模式,也能够达到这个要求。 解决...
阅读全文