随笔分类 - 01 [.NET 知识积累]
[转]const 与 readonly知多少
摘要:引自:http://www.cnblogs.com/royenhome/archive/2010/05/22/1741592.html尽管你写了很多年的C#的代码,但是可能当别人问到你const与readonly的区别时候,还是会小小的愣一会吧~ 笔者也是在看欧立奇版的《.Net 程序员面试宝典》...
阅读全文
在WCF中使用消息队列MSMQ
摘要:在WCF中使用消息队列MSMQ在windows平台上,MSMQ是首选的消息传递中间件,它是一种高速、异步、可靠的通信机制,当我们在Internet上的两个应用需要交换信息时,使用这样的中间件可能是必须的。构建企业级可靠的、异步的、消息应用方案,方案的设计目标是在Client/Server端建立可靠的、异步的通信。系统采用MSMQ作为传输机制,因为MSMQ支持可靠的队列通信。MSMQ部署在三方Server上(一般集群部署,避免单点故障)。Client端应用程序使用WCF的NetMsmqBingding来发送消息到MSMQ Server的私有队列。Service 服务程序将部署在IIS 7.0,并
阅读全文
.Net内存泄露原因及解决办法
摘要:.Net内存泄露原因及解决办法1. 什么是.Net内存泄露(1).NET 应用程序中的内存您大概已经知道,.NET 应用程序中要使用多种类型的内存,包括:堆栈、非托管堆和托管堆。这里我们需要简单回顾一下。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。在运行库的控制下执行的代码称作托管代码。相反,在运行库之外运行的代码称作非托管代码。COM 组件、ActiveX 接口和 Win32 API 函数都是非托管代码的示例。COM/COM++组件,ActiveX控件,API函数,指针运算,自制的资源文件...这些的非托管的,其它就是托管的.在CLR上编译运行的代码就是托管代码
阅读全文
.NET 强引用和弱引用
摘要:一:什么是弱引用 了解弱引用之前,先了解一下什么是强引用 例如 : Object obj=new Object(); 就是一个强引用,内存分配一份空间给用以存储Object数据,这块内存有一个首地址,也就是obj所保存的数据,内存分配的空间中不仅仅保存着Object对象信息,还保存着自己(Object本身)被引用的次数。 当一个对象被强引用的形式创建的时候,本身被引用的次数已经为1. 接着Object o=obj; 这句代码执行之后,obj指向的Object的存储空间已经被引用了2次,所以Object保存的被引用数值为2. 总结:强引用最终导致的结果就是被引用的对象的被引用次数+1; ...
阅读全文
C# 多线程同步和线程通信
摘要:多线程通信1. 当线程之间有先后的依赖关系时,属于线程之间的通信问题。也就是后一个线程要等待别的一个或多个线程全部完成,才能开始下一步的工作。可以使用:WaitHandle Class WaitHandle类作为基类来使用的,它允许多个等待操作。这个类封装了win32的同步处理方法。WaitHandle对象通知其他的线程它需要对资源排他性的访问,其他的线程必须等待,直到WaitHandle不再使用资源和等待句柄没有被使用。下面是从它继承来的几个类: AutoResetEvent:Notifies a waiting thread that an event has occurred. ...
阅读全文
invoke Javascript from C# code
摘要:http://justyouraveragegeek.com/blog/index.php/2010/03/winforms-with-a-webbrowsercontrol-fun-with-objectforscripting
阅读全文
LINQ
摘要:Basics of LINQ & Lamda Expressionshttp://www.codeproject.com/Articles/33769/Basics-of-LINQ-Lamda-Expressions.NET Language-Integrated Query for XML Datahttp://msdn.microsoft.com/library/bb308960.aspx
阅读全文
C# 如何判断文件属性(like: readonly)
摘要:IniFileini=newIniFile(Application.StartupPath+"\\CWSDB.ini");FileAttributesatt=File.GetAttributes(Application.StartupPath+"\\CWSDB.ini");if((att&FileAttributes.ReadOnly)==FileAttributes.ReadOnly){MessageBox.Show(Resources.ResourceManager.GetString("InvlaidFile"),Res
阅读全文
Mutex : Using Mutex to only lunch one instance in one machine
摘要:http://www.codeproject.com/Articles/32908/C-Single-Instance-App-With-the-Ability-To-Restore///<summary>///Themainentrypointfortheapplication.///</summary>[STAThread]staticvoidMain(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);boolonlyInstance=fal
阅读全文
有趣的MessageBox之X button的Enable和disable
摘要:大家对这个MessageBox 肯定都不陌生,但有谁注意到对话框右上角的x button,什么情况下是enable,什么情况下是disable的?一下为msdn的官方解释:1. http://msdn.microsoft.com/en-us/library/system.windows.messagebox.aspxTo enable a user to close a message box, Show displays a message box that has an OK button and a Close button in the title bar.2. http://sta.
阅读全文
Winform: how to cancel the winform close when click the "x" button
摘要:http://msdn.microsoft.com/en-us/library/system.windows.forms.form.formclosing(v=vs.80).aspxprivatevoidConfigurationTool_FormClosing(objectsender,FormClosingEventArgse){if(IsChanged()){DialogResultresult=MessageBox.Show(Resources.ResourceManager.GetString("ConfirmeMessage"),Resources.Resour
阅读全文
Serialize And Deserialize Binary Tree
摘要:1. Serialize And Deserialize Binary TreeusingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceSerializeAndDeserializeBinaryTree{classProgram{staticvoidMain(string[]args){//TestserializeList<string>serializeResult=newList<string>();nodes<string>rootN
阅读全文
Winform中的默认图片
摘要:1.如何取的winform程序中的默认图片,其实这个图片你用windows收索是收不到的,因为它被包含在dll中,具体实现如下:It is stored as a resource in the System.Windows.Forms.dll assembly. You could get a copy with Reflector. Open the assembly, open the Resources node, all the way down to "wfc.ico". Right-click, Save As. Not sure why you'd
阅读全文
本地化的设置和读取
摘要:1.以下两种方式都是从默认的资源文件里读取字符串。方法一:string te= Resources.ResourceManager.GetString("a"); 方法二:ResourceManager fee = new ResourceManager("RedirectorConfigurationTool.Properties.Resources",this.GetType().Assembly); string a= fee.GetString("a");其实打开 vs生成的Resource类,可以看到,此类是VS自动生成的,
阅读全文
(收藏)C# 5新特性详解之二——方法调用和Lambda表达式
摘要:http://sd.csdn.net/a/20120326/313536.html
阅读全文
(收藏)一个很不错的编程网站
摘要:http://www.uml.org.cn/c%2B%2B/201007161.asp
阅读全文
List排序
摘要:简单的实现一个利用list排序的方法:this.CallHistoryList.Sort(CompareTo);publicintCompareTo(CallHistoryleft,CallHistoryother){if(left.StartTime>other.StartTime){return-1;}elseif(left.StartTime==other.StartTime){return0;}else{return1;}}
阅读全文
How to operate excel in c#
摘要:1. Using C# to Create an Excel Documenthttp://www.codeproject.com/KB/cs/Excel_and_C_.aspx2.Write Data to Excel using C#http://www.codeproject.com/KB/cs/WriteDataToExcel.aspx3.
阅读全文
今日总结2012/1/6
摘要:1. Foreach内不能改变value2. Property的使用:小心不用在get;set内在使用property否则会造成死循环,而且很难检查。3. 在刷新UI,不管是直接去刷新还是通过InotifiproperyChange,or IConnectionChanged来出发UI刷新,只要是在非UI线程都要使用异步促发, Dispatch.BeginInvoke(() =>{});否则会产生accorss thread Exception.4. PhoneTask要特殊处理,因为phoneTask调用时,application并没有进入后台,所以也不会进入onNavigationT
阅读全文
浙公网安备 33010602011771号