代码改变世界

艾伟_转载:用C#设计Windows应用程序模板

2011-08-29 00:20 by 狼人:-), 214 阅读, 0 推荐, 收藏,
摘要:通常windows应用程序都有相似的特征:控件、菜单、工具条、状态栏等等。每次我们开始作一个新的windows应用程序时都是以相同的事情开始:建立项目,添加控件和事件处理器。如果我们有一个模板,那么我们就可以节约大量的时间了。 在介绍如何建立模板的过程中,将涉及大量的微软.net framework类库的基本知识。如果你没有使用集成开发环境那么本文介绍的模板对你将非常有用,如果你使用了visual studio.net这样的集成开发环境你也可以从中了解控件的工作方式,这对你也是很有用的。 写一个windows应用程序总是从下面的几个步骤开始: 1、创建一个窗体 2、给窗体添加控件... 阅读全文

艾伟_转载:用C#实现基于TCP协议的网络通讯

2011-08-29 00:20 by 狼人:-), 203 阅读, 0 推荐, 收藏,
摘要:TCP协议是一个基本的网络协议,基本上所有的网络服务都是基于TCP协议的,如HTTP,FTP等等,所以要了解网络编程就必须了解基于TCP协议的编程。然而TCP协议是一个庞杂的体系,要彻底的弄清楚它的实现不是一天两天的功夫,所幸的是在.net framework环境下,我们不必要去追究TCP协议底层的实现,一样可以很方便的编写出基于TCP协议进行网络通讯的程序。 要进行基于TCP协议的网络通讯,首先必须建立同远程主机的连接,连接地址通常包括两部分——主机名和端口,如www.yesky.com:80中,www.yesky.com就是主机名,80指主机的80端口,当然,主机名也可以用IP地... 阅读全文

艾伟_转载:从MySpace基于.NET平台的六次重构经历,来感受分布式

2011-08-29 00:20 by 狼人:-), 185 阅读, 0 推荐, 收藏,
摘要:Myspace和Facebook都是很优秀的社交类网站,它们拥有的用户和fans之多,大家都很清楚。 Myspace是一个基于.NET平台的,而Facebook更多是基于LAMP的。 我们来看看MySpace配合.NET+Windows Server 2003+Sql Server 2000/2005+IIS怎么创造传奇的 文章正文如下: 在每个里程碑,站点负担都会超过底层系统部分组件的最大载荷,特别是数据库和存储系统。接着,功能出现问题,用户失声尖叫。最后,技术团队必须为此修订系统策略。虽然自2005年早期,站点账户数超过7百万后,系统架构到目前为止保持了相对稳定,但MyS... 阅读全文

艾伟_转载:.NET 4.0 Beta2中的BigInteger和Complex类

2011-08-29 00:20 by 狼人:-), 155 阅读, 0 推荐, 收藏,
摘要:.NET4.0 Beta2中提供了新的System.Numerics命名空间,对应于System.Numerics.dll。该命名空间下就两个类BigInteger和Complex,我们来简单了解下这两个类的用法。 BigInteger:任意大小的带符号整数 1.Int64, SByte, UInt16, UInt32, and UInt64这些都有一个MinValue和MaxValue属性。而BigInteger没有这两个属性,因为它没有大小限制。2.不可变的类型.3.由于他没有大小限制,理论上当它足够大的时候会出现OutOfMemoryException异常. BigInteger初始化 阅读全文

艾伟_转载:C#语言基础常见问题汇总

2011-08-29 00:20 by 狼人:-), 146 阅读, 0 推荐, 收藏,
摘要:概述 1、什么是C#? C#是Microsoft公司设计的一种编程语言。它松散地基于C/C++,并且有很多方面和Java类似。 Microsoft是这样描述C#的:“C#是从C和C++派生来的一种简单、现代、面向对象和类型安全的编程语言。C#(读做‘Csharp’)主要是从C/C++编程语言家族移植过来的,C和C++的程序员会马上熟悉它。C#试图结合Visual Basic的快速开发能力和C++的强大灵活的能力。” 2、如何开发C#应用程序? .NET SDK包括了C#命令行编译器(csc.exe),下一个版本的Visual Studio (Visual Studio... 阅读全文

艾伟_转载:疑惑?改良? 从简单工厂到工厂方法

2011-08-29 00:20 by 狼人:-), 148 阅读, 0 推荐, 收藏,
摘要:写在前面 最近一段时间在研究有关设计模式方面的文章,拜读了TerryLee以及吕震宇两位老师所写的设计模式方面的系列文章,收获颇丰,也让我对OOP,OOD有了新的理解和认识,不过在看到工厂方面的几篇文章时,却总有个地方想不通,望各位老师专家能替在下答疑解惑,以下是自己对工厂模式的一些理解以及提出的一种改良方案,不知道是否有人提出过类似的方案,如有雷同纯属巧合。有说得不对的地方还请批评指正。 从简单工厂说起 严格来讲简单工厂并不属于GOF的23个设计模式之一,但它之所以存在而被人们广泛认知的原因,我想是由于它在一定程度上简化了工厂方法(Factory Method)与抽象工厂(Abst... 阅读全文

艾伟_转载:C#来创建和读取XML文档

2011-08-29 00:20 by 狼人:-), 148 阅读, 0 推荐, 收藏,
摘要:扩展标记语言XML(eXtensible Markup Language),是由W3C组织制定的。做为用于替代HTML语言的一种新型的标记语言,XML内部有着很多基本标准,XML就是通过与这些相关标准地结合,应用于科学计算、电子出版、多媒体制作和电子商务的。C#作为一种新型的程序语言,是.Net框架的一个重要组成部分,他和XML的关系颇深。本文就从一个方面来探讨一下这二者的关系。即:看用C#如何来创建和读取XML文档。 一.本文程序设计和运行的软件环境 (一)微软公司视窗2000服务器 (二).Net FrameWork SDK Beta 2 二.C#创建XML文档 在本文中我... 阅读全文

艾伟_转载:在C#中实现3层架构

2011-08-29 00:20 by 狼人:-), 180 阅读, 0 推荐, 收藏,
摘要:这篇文章讨论如何在c#中实现3层架构,使用MS Access数据库存储数据。在此,我在3层架构中实现一个小型的可复用的组件保存客户数据。并提供添加,更新,查找客户数据的功能。 背景 首先,我介绍一些3层架构的理论知识。简单说明:什么是3层架构?3层架构的优点是什么? 什么是3层架构? 3层架构是一种“客户端-服务器”架构,在此架构中用户接口,商业逻辑,数据保存以及数据访问被设计为独立的模块。主要有3个层面,第一层(表现层,GUI层),第二层(商业对象,商业逻辑层),第三层(数据访问层)。这些层可以单独开发,单独测试。 为什么要把程序代码分为3层。把用户接口层,商业逻辑层,数据访问... 阅读全文

艾伟_转载:浅析IHttpModule和IHttpHandler

2011-08-29 00:20 by 狼人:-), 172 阅读, 0 推荐, 收藏,
摘要:最近开发中涉及到一些使用IHttpModule和IHttpHandler,只是储备不够,抓紧查询MSDN学习了一下,将学习点滴记录一下。 一、IHttpModule 查看这个接口的代码可以发现,它是由两个方法组成: public interface IHttpModule{ void Dispose(); void Init(HttpApplication context); } 看到两个方法及方法标签,就明白这个IHttpModule接口有什么作用了,Init方法中传入了一个HttpApplication参数,它提供对 ASP.NET 应用程序内所有应用程序对象的公用的方法、属性和事件的访问 阅读全文

艾伟_转载:ASP.NET模板引擎技术

2011-08-29 00:20 by 狼人:-), 214 阅读, 0 推荐, 收藏,
摘要:以前听我朋友说起php的模板引擎技术的时候似懂非懂哪时感觉真的很强,一直在想asp.net有这种技术吗?我不知道我的理解是不是对的.其实 asp.net的模板引擎技术就是先建好一个静态的html页面我们称它为模板页,你如果有不同形式的页面哪就得建立不同的静态模板页,然后在后台用文件操作往这个文件里写东西然后在把这个模板页另存到一个静态页面的目录,不好意思可能我的理解太俗,如果有更好的理解和想法可以在apolov发文章告诉我谢谢。现在我附加一下代码 Default.aspx这个页面只有几个textbox控件和两个按妞控件 Code highlighting produced by Ac... 阅读全文

艾伟_转载:对于C#中b=a的N种情况分析

2011-08-29 00:20 by 狼人:-), 164 阅读, 0 推荐, 收藏,
摘要:本文旨在验证一个容易混淆的概念,从而为《玩转WPF/Silverlight中INotifyPropertyChanged和ObservableCollection》做铺垫。 两个相同类型的变量a和b,并且有如下关系: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->b=a; 如果a发生改变,b是否也发生改变呢? 情况很复杂,分以下几种情况谈论: 1) 单个实体 1. 简单类型 先考察int: Code highlight... 阅读全文

艾伟_转载:C# .NET学习经验总结

2011-08-29 00:20 by 狼人:-), 191 阅读, 0 推荐, 收藏,
摘要:1. 装箱、拆箱还是别名 许多介绍C# .NET学习经验的书上都有介绍 int -> Int32 是一个装箱的过程,反之则是拆箱的过程。许多其它变量类型也是如此,如:short <-> Int16,long <-> Int64 等。对于一般的程序员来说,大可不必去了解这一过程,因为这些装箱和拆箱的动作都是可以自动完成的,不需要写代码进行干预。但是我们需要记住这些类型之间 的关系,所以,我们使用“别名”来记忆它们之间的关系。 C# 是全面向对象的语言,比 Java 的面向对象都还彻底——它把简单数据类型通过默认的装箱动作封装成了类。Int32、Int16、Int64 阅读全文

艾伟_转载:C# 委托的同步调用和异步调用

2011-08-29 00:20 by 狼人:-), 191 阅读, 0 推荐, 收藏,
摘要:委托的Invoke方法用来进行同步调用。同步调用也可以叫阻塞调用,它将阻塞当前线程,然后执行调用,调用完毕后再继续向下进行。 同步调用的例子: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using System;using System.Threading;public delegate int AddHandler(int a, int b);public class Foo { static void Main() { ... 阅读全文

艾伟_转载:C# 反射技术应用

2011-08-29 00:20 by 狼人:-), 212 阅读, 0 推荐, 收藏,
摘要:反射(Reflection)是.NET中的重要机制,通过放射,可以在运行时获得.NET中每一个类型(包括类、结构、委托、接口和枚举等)的成员,包括方法、属性、事件,以及构造函数等。还可以获得每个成员的名称、限定符和参数等。有了反射,即可对每一个类型了如指掌。如果获得了构造函数的信息,即可直接创建对象,即使这个对象的类型在编译时还不知道。 1、.NET可执行应用程序结构 程序代码在编译后生成可执行的应用,我们首先要了解这种可执行应用程序的结构。 应用程序结构分为应用程序域—程序集—模块—类型—成员几个层次,公共语言运行库加载器管理应用程序域,这种管理包括将每个程序集加载到相应的应... 阅读全文

艾伟_转载:HttpApplication的认识与加深理解

2011-08-29 00:20 by 狼人:-), 157 阅读, 0 推荐, 收藏,
摘要:HttpApplication对象是经由HttpApplicationFactory.GetApplicationInstance(并最终调用HttpRuntime.CreateNonPublicInstance)创建的HttpApplicationFactory它的主要任务是使用 URL 信息来查找 URL 虚拟目录和汇集的 HttpApplication 对象之间的匹配关系。 这个工厂类的行为概括为有以下几点 1、工厂类维护, HttpApplication 对象池并使用它们来处理应用程序的请求。池的寿命与应用程序的寿命相同。 2、应用程序的第一个请求到达时,工厂类提取有关... 阅读全文
上一页 1 ··· 273 274 275 276 277 278 279 280 281 ··· 312 下一页