
C#
三维突破
这个作者很懒,什么都没留下…
展开
-
在C#中操作XML
我用的是一种很笨的方法,但可以帮助初学者了解访问XML节点的过程。 已知有一个XML文件(bookstore.xml)如下: Oberons Legacy Corets, Eva 5.95 1、往节点中插入一个节点: XmlDocument xmlDoc=new XmlDocument(); xmlDoc.Load("b原创 2011-06-24 11:49:00 · 268 阅读 · 0 评论 -
C#静态构造函数与复制构造函数
静态构造函数如果类有静态成员,在创建和使用对象之前有时必须初始化这些成员,在这种情况下,可以向类中添加静态构造函数。如: public class Contact { public int ID { get; set; } public string Name { get; set; } publ原创 2011-11-04 14:03:01 · 884 阅读 · 0 评论 -
C# 密封类和密封方法
在C#中,为了确保其他类不可以派生于某一类,可以使用sealed关键字密封该类,对某个类使用 sealed关键字作为前缀,这样可以防止其他类继承自该类,如public sealed class Square:Rectangle{}下面的语句将导致产生错误:///---Error:Square is sealed---public class Rhombus:Square{}密封原创 2011-11-09 09:10:42 · 7203 阅读 · 0 评论 -
C# 常见操作汇总
using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts原创 2011-12-01 11:03:58 · 2316 阅读 · 0 评论 -
C#结构体
在使用类的一个备选方法是使用结构体,结构体是轻量级的用户定义类型,它非常类似于类,但是有一些不同之处:结构体不支持继承或析构函数;结构体是值类型(类是引用类型);结构体不可以声明默认构造函数。结构体隐式地派生于Object,并且是值类型(与类不同),意味着在通过结构体创建对象并将该对象赋给另一个变量时,该变量将包含结构体对象的副本。下面是Coordinate结构体的定义原创 2011-11-04 16:18:38 · 707 阅读 · 0 评论 -
类的初始化
在C#中,类的初始化顺序是:1、首先,初始化类的实例字段;2、其次,调用基类的构造函数,没有明确的基类则调用System.Object的构造函数;3、最后,调用自己的构造函数 类的初始化顺序图na原创 2013-04-09 14:32:15 · 608 阅读 · 0 评论 -
泛型委托
泛型委托和非泛型委托相似,只是泛型转载 2014-07-08 10:26:11 · 1198 阅读 · 1 评论 -
C#Attribute & Attribute Reflacion
Attribute的定义示例 :AttributeTargets.Class 枚举类型,标签级别定义,此枚举标识类级别AllowMultiple 反复定义Inherited 被子类继承[AttributeUsage(AttributeTargets.Class,AllowMultiple=false,Inherited=false)] public class Tab原创 2014-11-18 17:09:19 · 601 阅读 · 0 评论 -
C#调用注册表,修改IE相关配置
最近在项目中遇到用C#调用注册表,修改IE选项高级选项卡中的“显示图片”复选框,用到的代码如下:RegisterHelper.cs:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using Micros原创 2015-10-20 19:26:21 · 2087 阅读 · 0 评论 -
C# 非托管资源释放
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runtime.InteropServices;namespace ZX.OG.ScreenShot{ public class MemoryManagement {原创 2016-03-09 11:29:13 · 1363 阅读 · 0 评论 -
C#泛型方法
//数组排序,泛型约束写法 public static void sort(T[] list) where T : System.IComparable { T currentMin; int currentMinIndex; for (int i = 0; i原创 2017-11-14 14:14:57 · 362 阅读 · 0 评论 -
C#多态性
C# 多态性是指不同对象受到相同消息时,会产生不同的动作,从而实现“一个接口,多种方法”。C#支持两种多态性:第一种是编译时多态性,是在程序编译时就决定如何实现某一动作,通过方法重载和运算符重载来实现,编译时多态性在编译时就知道调用方法的全部信息;第二种是运行时多态性,是在运行时动态实现某一动作,通过继承和虚方法来实现。对于类中的方法,若声明时加上virtual修饰符,则称该方法为虚方法,反之原创 2011-11-25 15:06:03 · 688 阅读 · 0 评论 -
C#实例成员和静态成员
C#类的成员分为两种类型,如下表所示类型说明数据存储对象所需数据的成员,函数可以使用这些数据执行他们的工作函数 类中的代码块,函数成员允许类执行它的工作数据成员分组为实例成员和静态成员1、实例成员,默认情况下,所有成员都是实例成员,除非他们是常理或者有前缀static关键字,如public int ID;pub原创 2011-11-03 13:31:23 · 1227 阅读 · 0 评论 -
C#接口中的索引器
索引器可在 接口(C# 参考) 上声明。接口索引器的访问器与类索引器的访问器具有以下方面的不同:接口访问器不使用修饰符。接口访问器没有体。因此,访问器的用途是指示索引器是读写、只读还是只写。如:public interface ISomeInterface{原创 2011-07-05 16:31:50 · 636 阅读 · 0 评论 -
C# 析构函数
不能在结构中定义析构函数。只能对类使用析构函数。 一个类只能有一个析构函数。 无法继承或重载析构函数。 无法调用析构函数。它们是被自动调用的。 析构函数既没有修饰符,也没有参数。原创 2011-07-06 15:05:16 · 469 阅读 · 0 评论 -
C#私有构造函数
私有构造函数是一种特殊的实例构造函数。它通常用在只包含静态成员的类中。如果类具有一个或多个私有构造函数而没有公共构造函数,则其他类(除嵌套类外)无法创建该类的实例如:class NLog{ // Private Constructor: priva原创 2011-07-06 13:56:12 · 1442 阅读 · 0 评论 -
Func<T, TResult> 委托
Func 委托封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。public delegate TResult Func(T arg)类型参数in T此委托封装的方法的参数类型。该类型参数是逆变的。即可以使用指定的类型或派生程度更低的类型。有关协变和逆变的更多信原创 2011-07-11 16:37:39 · 5918 阅读 · 0 评论 -
必须知道的.NET
好书不能只读一遍,这两天又翻看了一遍《你必须知道的.NET》,重温了下基础,重温了下经典,简单记录了下来。 内存分配:CLR 管理内存的区域,主要有三块,分别为:线程的堆栈,用于分配值类型实例。堆栈主要由操作系统管理,而不受垃圾收集器的控制,当值类型实例所在方法结束时,其存储单位转载 2011-07-14 11:50:21 · 1152 阅读 · 0 评论 -
DataSet 转换为Json
/// /// DataSet对象转换为Josn /// /// /// public static string GetJsonString(DataSet ds)原创 2011-01-20 14:08:00 · 1284 阅读 · 2 评论 -
C#目录文件复制、创建操作
using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.原创 2011-09-07 10:33:58 · 5579 阅读 · 1 评论 -
C#继承关键字说明
修饰符说明new隐藏具有相同签名的继承方法static属于类型自身而不是特定对象的成员virtual派生类可以重写的方法abstract提供方法/类的签名,但不包含任何实现override重写原创 2011-08-10 10:52:30 · 3407 阅读 · 0 评论 -
C# 操作Cookies
#region Cookie处理 /// /// 写cookie值 /// /// 名称 /// 值 public static void WriteCookie(string s原创 2011-09-15 15:48:47 · 699 阅读 · 0 评论 -
C#加密生成16位随机数
class Program { static void Main(string[] args) { string path = @"C:\AAAA16.txt"; RandomNumberGe原创 2011-09-15 13:06:34 · 4873 阅读 · 0 评论 -
C#3.0 匿名类型
C#3.0引入了成为匿名类型的新功能,通过该功能可以在没有正式定义类的情况下定义数据类型,如下 var test = new { Name = "shuyizhi", Age = 29, AAA = "CCC" };C#匿名类型永远不原创 2011-11-03 13:13:08 · 422 阅读 · 0 评论 -
C# 使用Semaphore(信号量)控制多线程
使用背景在C#.NET中,当需要动态控制线程的数量时,我们可以使用Semaphore来控制最大线程数。 关于Semaphore代码示例 class Program { //Semaphore(初始授予0个请求数,设置最大可授予5个请求数) static Semaphore semaphore = new Semaphore(0, 5转载 2017-11-14 14:19:11 · 1688 阅读 · 0 评论