随笔分类 - C#
同步 VS 异步
摘要:在进行网络编程时,我们通常会看到 “同步”、“异步”、“阻塞”、“非阻塞” 四种调用方式以及他们的组合。其中,同步方式、异步方式主要是由客户端(client)控制的,具体如下: 同步: 所谓同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不返回或继续执行后续操作。 简单来说,同步就是同一时
阅读全文
C# 使用递归获取所有下属、所有子部门……
摘要:本例中获取的是所有的晚辈!首先定义家庭成员类: public class FamilyMember { /// <summary> /// 身份 /// </summary> public string identity { get; set; } public int level { get; s
阅读全文
C# 结构与类的区别
摘要:一、定义方式 定义结构: 定义类: 首先,声明所使用的关键字: 使用 struct 声明结构,使用 class 声明类。 其次,默认的访问权限: 结构的默认访问权限是 public,而类的默认访问权限是 private。 然后,声明的变量的初始值: 在类里面声明变量可以给初始值,但在结构体中声明的变
阅读全文
指定时间(一小段时间内)执行功能
摘要:概述 有些时候,我们会希望到某个时间了再执行某个功能,比如晚上12点的时候,以下代码就可以粗略的实现该功能(之所以说粗略,是因为当前代码并没有把时间的限制精确到那么准) 当然,如果你希望时间再准一些,我觉得可以在现有代码上再多几层嵌套,从外到内每一层对时间的筛选细度和线程休眠时间可以越来越小,这样,
阅读全文
获取实现了某接口的所有类,并返回该类中自定义的方法的方法名
摘要:准备阶段: 定义接口和实现接口的类。 定义执行方法(最后是调用) Assembly asm = Assembly.GetExecutingAssembly(); //当前程序集 var types = asm.GetTypes().Where(t => t.GetInterfaces().Conta
阅读全文
集合类
摘要:(文档是单词的集合,搜索结果集也是文档的集合)在开发中,集合类是必不可少的。 集合类 有存储一列的动态数组 List 以及队列 Queue(先进先出) 和堆栈 Stack(后进先出),还有存储键值对的 Dictionary 和 SortedList。 Dictionary 是散列表的实现,而 Sor
阅读全文
字符串
摘要:C# 的字符串中有些字符被看成是转义字符,比如“\”。为了输入一个“\”,需要写两个“\”。 在字符串前面加上 @以后,就可以将转义字符当成普通字符。 有时候用 ASCII 编码的字符来表示 Unicode 编码的字符,需要把这样的编码后的字符串转为原来的字符串。 String 对象是不可改变的。不
阅读全文
枚举类型
摘要:(词有名词或动词等类型,句子有陈述句或疑问句等类型) 使用枚举比使用无格式的证书来描述这些类型至少有以下 3 个优势: (1) 枚举可以使代码更易于维护,有助于确保给变量指定合法的、期望的值。 (2) 枚举使代码更清晰,允许用描述性的名称表示整数值,而不是用含义模糊的数字来表示。 (3) 枚举使代码
阅读全文
C# 基本语法
摘要:从语法上讲,C# 语言和 Java 语言非常相似,只是在细节上有些差别。 实际上,C# 语言和 Java 语言的主要差别不是在语言本身,而是在它们所执行的平台上。 Java 程序需要一个运行环境 JRE 来执行代码,但 JRE 只限于在 Java 这一门语言中使用。 C# 语言也需要一个运行环境 C
阅读全文
C# 中的时间(DataTime)
摘要:在做报表或查询的时候,常常会预设一些可选的日期范围,如本周、本月、本年等,利用 C# 内置的DateTime基本上都可以实现这些功能。 当前时间: 今天、昨天、明天: 本周周一、周日: 上周周一、周日,下周周一、周日: 显示今天星期几: 本月月初、月末: 上个月:月份减1 下个月:月份加1 本季度:
阅读全文
队列的运用(实例代码)
摘要:/// /// 索引的创建与更新 /// public class IndexManager { public static readonly IndexManager Instance = new IndexManager(); private static readonly string IndexPath = Ho...
阅读全文
委托 + 事件
摘要:例1: 例2: 通知者接口: 通知者 Boss 类: 观察者,看股票的同事: 观察者,看 NBA 的同事: 客户端代码: 例3: 首先增加一个类 CatShoutEventArgs,让它继承 EventArgs(包含事件数据的类的基类 [ MSDN ]) 这个类(EventArgs)的作用就是用来在
阅读全文
24.2 网络编程基础——System.Net 命名空间
摘要:使用C#进行网络编程时,通常要用到: System. Net 命名空间、 System. Net. Sockets 命名空间、 System. Net. Mail 命名空间。 24.2.1 System. Net 命名空间及相关类的使用 System. Net 命名空间为当前网络上使用的多种协议提供
阅读全文
计算机网络基础
摘要:24.1.1 服务器:提供信息的计算机或程序, 客户机:请求信息的计算机或程序, 网络——主要是用来连接服务器与客户机实现两者相互通信的。 局域网:LAN(Local Area Network) 广域网:WAN(Wide……) 因特网——由无数的 LAN 和 WAN 组成 24.1.2 网络协议介绍
阅读全文
VS2010-自定义控件
摘要:1.自定义控件 (1)新建—项目,项目模板选择“类库”,取名smControl,填写项目文件保存目录,点击确定 (2)完成后在解决方案资源管理器中删除类Class1 (3)添加“用户控件”——在解决方案资源管理器中选中项目smControl,右键添加新建项,新建项类型选择用户控件,取名smUserC
阅读全文
控件重绘
摘要:1. 设置控件DrawMode属性为OwnerDrawFixed,编辑控件DrawItem事件 重绘tabControl——选项卡控件 string text = ((TabControl)sender).TabPages[e.Index].Text; SolidBrush brush = new
阅读全文
socket网络编程
摘要:两台计算机进行通信,离不开socket这样一个东西—— 人通过【电话】可以通信,而程序通过【socket】来通信,因此叫socket网络编程 (socket套接字可以理解为程序间的电话机) 在网络中,将socket作为一种进程通信机制 socket也称为套接字,用来描述IP地址和端口号(两个程序通信
阅读全文
浙公网安备 33010602011771号