
C#.Net
文章平均质量分 81
Waldenz
技术改变世界
展开
-
值类型与引用类型
1. 如果数据类型在它自己的内存分配中存储数据,则该数据类型就是“值类型”。(值类型存储的是数据,分配在栈上) “引用类型”包含指向存储数据的其他内存位置的指针。(引用类型存储的是指针,分配在堆上)2. 引用类型变量包含着对象在托管堆中的内存地址。默认情况下,当一个引用类型变量被创建时,它被初始化为null,表示该引用类型变量目前没有指向一个有效的对象。试图使用null引用类型变量会原创 2011-12-15 13:32:47 · 457 阅读 · 0 评论 -
装箱拆箱
1. 装箱就是将值类型(value type)转换为引用类型(reference type)的过程. 利用装箱和拆箱的功能,允许值类型与object类型的值相互转换. 从栈上把值封装到托管堆上就是装箱,而从托管堆吧值封送的栈上就拆箱 int i=0; Syste.Object obj=i;//将i装箱! int j=(int)obj;//将obj拆箱!原创 2012-07-26 11:06:50 · 886 阅读 · 0 评论 -
一篇文章搞定SqlDataAdapter
ado.net提供了丰富的数据库操作,在这些操作中SqlConnection和SqlCommand类是必须使用的,但接下来可以分为两类操作:一类是用SqlDataReader直接一行一行的读取数据库。第二类是SqlDataAdapter联合DataSet来读取数据。两者比较:SqlDataReader由于是直接访问数据库,所以效率较高。但使用起来不方便。转载 2012-08-23 11:30:16 · 583 阅读 · 0 评论 -
.NET实质
写在开篇之前 本系列以笔记的方式、将一些书籍的核心内容概括,给自己留一个读书笔记。也方便大家用最短的时间掌握最丰富最重要的内容。 作为读书笔记,本身不属于虫子原创,对于知识点有疑问的同学可以提出大家一起交流。 书籍的选材目前限定在开发、运维、dba、网络安全几方面。欢迎有爱的同学一起学习。 clr基本 CLR(Common Language转载 2012-10-26 13:49:21 · 608 阅读 · 0 评论 -
C#通过模板创建Word文件
C#通过模板创建Word文件,模板文件中创建书签bookmark,并在调用时给书签位置赋值。模板创建文件类 /// ///创建Word格式的Report 的摘要说明 /// public class CreateWordReport { private _Application wordApp = null;原创 2015-06-26 09:45:15 · 3412 阅读 · 0 评论 -
DevExpress的DateEdit设置显示日期和时间
1. 设置Mask.EditMask和DisplayFormat,EditFormat属性,设置为一致:'yyyy-MM-dd HH:mm'; //按照想要的显示格式设置此属性。 this.dateEdit1.Properties.DisplayFormat.FormatString = "yyyy-MM-dd HH:mm"; this.dat原创 2015-06-26 16:28:06 · 69273 阅读 · 2 评论 -
error MSB6006: “LC.exe”已退出
最近一个c#工程,之前编译正常。后重装系统,安装DevExpress后,编译的过程中,什么错误也没提示,只提示"4>C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(2401,5): error MSB6006: “LC.exe”已退出,代码为 -1。",真好的诡异,后来想到把工程下licenses.lic原创 2015-10-22 11:01:01 · 6096 阅读 · 0 评论 -
.net 控件命名规范
控件命名规范类型前缀示例AdRotatoradrtadrtTopAdButtonbtnbtnSubmitCalendarcalcalMettingDatesCheckBoxchkchkBlueCheckBoxListchklchklFavColor转载 2015-11-11 17:29:04 · 1450 阅读 · 0 评论 -
Datatable转换成List实体对象列表
/// /// 将Datatable转换为List集合 /// /// 类型参数 /// datatable表 /// public static List DataTableToList(DataTable dt) { var list = new Lis原创 2015-11-20 15:56:08 · 3034 阅读 · 0 评论 -
NPOI向word中插入图片的Bug解决方案
NPOI包中插入图片,会导致最终生成的word打不开。使用自定义的插入。 public class XWPFInsertPicture { public void WordIndertPicTest() { try { var wordDoc = new XWPFDocument...原创 2018-06-06 16:43:06 · 4399 阅读 · 1 评论 -
Parallel Stop与Break的深入解析
普通for循环、foreach循环中有break/continue用于流程控制,在Parallel中也有用于流程控制的方法,即ParallelLoopState类的Stop/Break方法。但下问要证明的是Parallel中的Stop/Break方法和普通循环中的break/continue的区别。首先给大家看一个错误的说法:来源 https://www.cnblogs.com/huatao...原创 2018-08-27 11:21:11 · 1298 阅读 · 2 评论 -
托管和非托管代码
托管代码: 由公共语言运行库环境(CLR,而不是直接由操作系统)执行的代码. 托管代码应用程序可以获得公共语言运行库服务,例如自动垃圾回收,运行库类型检查和安全支持等. 这些服务帮助提供独立于平台和语言的.统一的托管代码应用程序行为.非托管代码: 在公共语言运行库环境的外部,由操作系统直接执行的代码. 非托管代码必须提供自己的垃圾回收.类型检查,安全支持等服务. 它于托管代码不同原创 2012-08-07 10:21:01 · 855 阅读 · 0 评论 -
.NET运行机制
.NET Framework是一个以规格为基础的开发平台。而这份规格统称为CLI(Comm Language Infrastructure),而最初由MicroSoft依据这个规格所自行实现的产品就是CLR(Common Language Runtime)。在CLI规格中,又细分为四个子规格。CIL(Common intermidiate Language), CTS(Common Type Sy原创 2012-07-28 09:50:01 · 2529 阅读 · 0 评论 -
c#中启动exe程序
c#中启动exe程序 Console.WriteLine("开始运行"); Process pro = Process.Start("cmd.exe", "/c ping www.baidu.com");原创 2011-09-19 17:21:25 · 4473 阅读 · 0 评论 -
静态构造函数
namespace StaticConstructor{ class A { public A(string text) { Console.WriteLine(text); } }原创 2011-08-30 15:35:56 · 338 阅读 · 0 评论 -
c#深度克隆
深度克隆的方法,用序列化using System.Xml.Serialization;using System.IO;using System.Runtime.Serialization.Formatters.Binary; public object Clone() { MemoryStream stream = new MemoryStream()原创 2011-12-14 11:31:46 · 1232 阅读 · 0 评论 -
winform窗体中移动控件
在主窗体中添加一个button,实现button的移动. public partial class Form1 : Form { private Point beforeP;//开始位置 private Point afterP;//结束位置 public Form1() { Initialize原创 2011-12-14 14:20:22 · 4451 阅读 · 0 评论 -
Monitor和lock
优快云还真是个好地方,会有很多真正的技术大侠来解答问题和讲解一些疑难问题.本文是提取自技术贴 提取自该贴 |- 拥有锁的线程 lockObj->|- 就绪队列(ready queue) |- 等待队列(wait queue)(转载)当一个线程尝试着lock一个同步对象的时候,该线程就在就绪队列中排队。一旦没人拥有该同步对象,就绪队列中的原创 2011-12-14 16:54:07 · 1555 阅读 · 0 评论 -
const和readonly
区别有两点:1.const只可以在声明中初始化, readonly可以在声明和构造函数中初始化.2.const是编译时常量,readonly是运行时常量.所以建议用readonly定义常量 class SampleClass { public readonly int y = 25; public readonly int z=DateTime.N原创 2011-12-15 14:18:06 · 477 阅读 · 0 评论 -
c#编程注意要点
提高C#编程水平的50个要点(转自优快云)1.总是用属性 (Property) 来代替可访问的数据成员2.在 readonly 和 const 之间,优先使用readonly3.在 as 和 强制类型转换之间,优先使用 as 操作符4.使用条件属性 (Conditional Attributes) 来代替条件编译语句 #if 5.总是为自定义类重载 ToString 方法转载 2011-12-15 13:47:27 · 536 阅读 · 0 评论 -
列出一个数组里面的重复数字
//列出一个数组里面的重复数字 int[] arr = new int[255];//原始数组 Random ra=new Random (); for (int i = 1; i < 256; i++) { arr[i - 1]原创 2011-12-30 11:06:37 · 951 阅读 · 0 评论 -
测量运行时间StopWatch类
using System;using System.Diagnostics;using System.Threading;class Program{ static void Main(string[] args) { Stopwatch stopWatch = new Stopwatch();//测量运行时间原创 2012-03-07 16:12:02 · 598 阅读 · 0 评论 -
垃圾回收--代
垃圾回收--代代是CLR垃圾回收器采用的一种机制,他唯一的目的就是提升应用程序的性能,采用代的垃圾回收器做到了一下几点:1:对象越新,生存周期越短,跟栈的原理很像,先进后出,先定义的局部变量,在栈中停留的时间相对长一点。2:对象越老,生存周期越长,后面解释。3:回收堆的一部分,速度快于回收整个堆,那是肯定的,就是为了实现只回收一部分内存中的数据,才产生了代的概念,大多数时间只回收第转载 2012-03-08 13:53:18 · 776 阅读 · 0 评论 -
c#二分查找
二分查找又称折半查找,它是一种效率较高的查找方法。二分查找要求:线性表是有序表,即表中结点按关键字有序,并且要用向量作为表的存储结构。不妨设有序表是递增有序的。public class Program { public static int Binsch(int[] a, int key) { int low =原创 2012-03-15 16:35:40 · 3201 阅读 · 0 评论 -
c#代码查询带命名空间的xml文件
XmlDocument xd = new XmlDocument(); xd.Load("soap.xml"); XmlNamespaceManager man = new XmlNamespaceManager(xd.NameTa原创 2011-09-16 17:39:41 · 805 阅读 · 0 评论