
C#
文章平均质量分 66
Neo_Wu
这个作者很懒,什么都没留下…
展开
-
Interface接口学习总结浅析
Interface接口学习主要向你介绍了在编程时使用的Interface接口那么作用是什么?Interface接口可定义的类是什么?希望对你了解和学习Interface接口有所帮助。AD:2013云计算架构师峰会课程资料下载Interface接口的主要功能是什么呢?我们经常在编程时使用的Interface接口那么作用是什么?Interface接口可定义的类是转载 2013-12-04 21:34:08 · 1037 阅读 · 0 评论 -
关于SQL中,C#监视某张表SqlDependency学习笔记
sqlDependency提供了这样一种能力:当被监测的数据库中的数据发生变化时,SqlDependency会自动触发OnChange事件来通知应用程序,从而达到让系统自动更新数据(或缓存)的目的.快速上手可参见园友的下列文章http://www.cnblogs.com/xrinehart/archive/2006/07/27/461106.html .NET 2.0 SqlD转载 2013-11-03 23:58:30 · 1294 阅读 · 0 评论 -
win7下IIS的安装和配置 图文教程
最近工作需要IIS,自己的电脑又是Windows7系统,找了下安装的方法,已经安装成功。在博客里记录一下,给需要的朋友,也是给自己留个备份,毕竟我脑子不是很好使。一、首先是安装IIS。打开控制面板,找到“程序与功能”,点进去二、点击左侧“打开或关闭Windows功能”三、找到“Internet 信息服务”,按照下图打勾即可等待安装完成转载 2013-11-02 19:47:19 · 869 阅读 · 0 评论 -
CLR 完全介绍-反射之反思
清晰的组件化目标是否因在库间共享过多类型信息而落空?或许您需要高效的强类型化数据存储,但如果每次对象模型发展后都需要更新您的数据库架构,那会耗费很大成本,所以您更愿意在运行时推断出其类型架构吗?您需要交付能接受任意用户对象的组件,并以某种智能化的方式处理它们吗?您希望库的调方者能以编程方式向您说明它们的类型吗?如果您发现自己在苦苦维持强类型化数据结构的同时,又冀望于最大化运行时灵活性,那么您大转载 2013-11-16 22:28:23 · 936 阅读 · 0 评论 -
白话C#:反射
反射是一种晚绑定,它可以被开发者用来设计出更具灵活性的代码,而代价则是花费更多的系统资源开销使得应用程序可以在运行时获取一些未知信息。说白了,在编写代码的时候,开发者可能还不知道或不能确定一些对象的信息,于是把决定权交给代码本身,将来在需要的时候由代码自己去获取和判断这些信息并作出相应的反应。这样的方式固然可以使代码更加灵活,但在想要使用反射的时候,必须先考虑好在性能与灵活之间的一个权衡,转载 2013-11-16 20:17:49 · 797 阅读 · 0 评论 -
详解C#编程中的反射机制与方法
Reflection,中文翻译为反射。这是.Net中获取运行时类型信息的方式,.Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块(Module)’、‘类型(class)’组成,而反射提供一种编程的方式,让程序员可以在程序运行期获得这几个组成部分的相关信息,例如:Assembly类可以获得正在运行的装配件信息,也可以动态的加载装配件,以及在装配件中查找类型信息,并创建该类型的实例。转载 2013-11-16 20:16:50 · 866 阅读 · 0 评论 -
反射及元数据的性能问题
理清几个基本点在开始谈论性能问题之前,有必要首先理清几个基本点。我们谈C#,就是在谈.NET Framework(或者更准确一点是CLR,因为.NET Framework除了CLR还包括BCL);谈.NET Framework(CLR),也就是在谈C#。因为支撑C#语法之后的就是整个CLR的机制。因此,我说C#性能不好,和说CLR性能不好,说的是一个事情(就像说Java性能不好,就是说JV转载 2013-11-16 22:11:52 · 1306 阅读 · 0 评论 -
Silverlight:xap包(或本地缓存)下载版本更新的解决思路
在SL开发中,通常会将项目按模块分成多个xap实现按需下载,但是由于浏览器的缓存,就算某个模块代码修改过并重新发布到服务器,如果这个xap已经在浏览器缓存中,实际加载时,仍然有可能调用的是本地缓存,而非最新的版本。通常解决这个问题的办法是在xap包的下载地址后附加一个随机数,类似http://xxx.com/abc.xap?t=1235817232 之类。但是这样相当于强制浏览器每次去重新转载 2013-11-15 18:43:47 · 1372 阅读 · 0 评论 -
深入浅出话窗体(一)——窗体事件模型(上)
深入浅出话窗体(一)——窗体事件模型(上) 作者:优快云 刘铁猛 小序: 工作中最大的挑战并不是那些Mission Impossible,而是你需要一边保持安静、平衡的心态以专注于工作,一边对抗公司体制、社会经济和人际环境对这种心态的破坏——这是对儿永远也解不开的矛盾。 正文:转载 2013-10-23 21:41:24 · 765 阅读 · 0 评论 -
C# 互操作性入门系列(一):C#中互操作性介绍
本专题概要:引言平台调用C++ Interop(互操作)COM Interop(互操作) 一、引言 这个系列是在C#基础知识中遗留下来的一个系列的,因为在C# 4.0中的一个新特性就是对COM互操作改进,然而COM互操作性却是.NET平台下其中一种互操作技术,为了帮助大家更好的了解.NET平台下的互操作技术,所以才有了这个系列。然而有些朋友们可能会有这样的疑问—转载 2013-11-19 21:40:37 · 1784 阅读 · 0 评论 -
C#中调用COM对象简介
摘要:本文介绍要想C#调用COM对象的方法、函数和属性,就必须使用包含正确设置的Type对象的InvokeMethod()方法。 .NET框架是COM的一个自然发展,两者共享许多核心要素,这包括组件的再利用以及语言的中立性。为了向后兼容,COM Interop可以使用现存的COM组件而不要求对原始组件进行修改。当一个 .NET 框架开发人员想将COM代码合并到一个管理应用程序中时转载 2013-11-19 21:39:42 · 2455 阅读 · 0 评论 -
C# 互操作性入门系列(四):在C# 中调用COM组件
本专题概要:引言如何在C#中调用COM组件——访问Office 互操作对象在C# 中调用COM组件的实现原理剖析错误处理小结 一、引言 COM(Component Object Modele,组件对象模型)是微软以前推崇的一个开发技术,所以现在微软的很多产品都用到了COM组件,如Office,IE 等。然而如果.NET 平台下的程序想访问COM组件的方式来实现某个功能怎么办呢转载 2013-11-19 21:53:53 · 1884 阅读 · 0 评论 -
异常管理框架指南
Exception Management Architecture GuideException Management Architecture Guide 异常管理框架指南1. 异常管理要架构一个结构良好、维护性高、富有弹性的应用系统就必须采用适当的异常管理策略。系统的异常管理必须包含以下功能:l翻译 2013-12-03 14:41:16 · 2162 阅读 · 0 评论 -
c#多线程(UI线程,控件显示更新) Invoke和BeginInvoke 区别
如果只是直接使用子线程访问UI控件,直接看内容三,如果想深入了解从内容一看起。 一、Control.Invoke和BeginInvoke方法的区别先上总结:Control.Invoke 方法 (Delegate) :在拥有此控件的基础窗口句柄的线程上执行指定的委托。但委托的内容在UI线程上执行。Control.BeginInvoke 方法 (Delegate转载 2013-12-09 16:28:24 · 3447 阅读 · 1 评论 -
const 与 readonly知多少
尽管你写了很多年的C#的代码,但是可能当别人问到你const与readonly的区别时候,还是会小小的愣一会吧~ 笔者也是在看欧立奇版的《.Net 程序员面试宝典》的时候,才发现自己长久以来竟然在弄不清出两者的情况下,混用了这么长的时间。的确,const与readonly 很像,都是将变量声明为只读,且在变量初始化后就不可改写。那么,const与readonly 这两个修饰符到底转载 2013-11-15 11:00:40 · 758 阅读 · 0 评论 -
C# 装箱和拆箱[整理]
1、 装箱和拆箱是一个抽象的概念 2、 装箱是将值类型转换为引用类型 ;拆箱是将引用类型转换为值类型 利用装箱和拆箱功能,可通过允许值类型的任何值与Object 类型的值相互转换,将值类型与引用类型链接起来 例如: int val = 100; object obj = val; Console.WriteLine (“对象的值转载 2013-11-14 09:50:45 · 857 阅读 · 0 评论 -
C#中Dictionary、ArrayList、Hashtable和Array的区别
IDictionary接口是所有字典类集合的基本接口,该接口与ICollection,IEnumerable接口是所有非泛型类集合的最基本的接口IEnumerable接口用于公开枚举数,该枚举数支持在非泛型集合上进行简单迭代。实现了该接口的集合可以用foreach语句迭代其中的元素ICollection接口定义所有非泛型集合的大小、枚举数和同步方法。IDictionary接转载 2013-11-13 23:43:01 · 1126 阅读 · 0 评论 -
C#中using指令的几种用法
2011-07-06 10:47 佚名 互联网 字号:T | T本文介绍的是C#中using指令的几种用法,希望对你有帮助,一起来看吧!AD:2013云计算架构师峰会课程资料下载关于C#中USING的用法,我们之前就和大家讨论过,建议阅读,《C# Using 用法》和《C# Using用法三则》,供大家参考。1.using转载 2013-11-27 22:27:36 · 1546 阅读 · 0 评论 -
C#实现动态多语言界面程序
一直想做一个多语言的程序,研究了一下.net的本地化方法,觉得做起来比较麻烦,而且不能快速切换,就自己琢磨着写一个。以我做的一个C# winform 项目为例。 首先设计多语言文件,这里我用XML来保存,基本结构如下。 1xml version = "1.0" encoding = "GB2312"?> 2AirControl language="简体中文">转载 2013-11-13 00:14:55 · 2100 阅读 · 0 评论 -
深度剖析C#序列化和反序列化
C#序列化和反序列化程序都是基于工厂模式下的,那么C#序列化和反序列化到底有什么不同之处么?那么本文就向你详细介绍C#序列化和反序列化程序的区别及其应用。AD:C#序列化和反序列化,两者的程序处理方式基本一致,都是基于工厂模式的,所谓C#序列化就是是将对象转换为容易传输的格式的过程,一般情况下转化打流文件,放入内存或者IO文件中。例如,可以序列化一个对象,然转载 2013-11-12 15:08:15 · 1868 阅读 · 0 评论 -
event与delegate的区别
首先,通过加入event关键字,在编译的时候编译器会自动针对事件生成一个私有的字段(与此事件相关的委托),以及两个访问器方法,即add访问器方法以及remove访问器方法,用于对事件的注册及注销(对事件使用+=及-=操作时就是调用的这两个方法)。我想你们的问题主要是,实际上声明一个委托类型的字段也可以实现这些功能。实际上之所以采用event而不直接采用委托,实际上还是为了封装。可以设想一下转载 2013-10-23 21:40:04 · 921 阅读 · 0 评论 -
DockPanel 右键增加关闭,除此之外全部关闭的功能
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WeifenLuo.WinFormsUI.Doc转载 2013-10-23 16:46:26 · 1886 阅读 · 0 评论 -
抽象类与接口类
抽象类 abstract11, 不能被实例化.22, 抽象方法不能包含方法实现.33, 包含有抽象方法的类一定要定义为抽象类.44, 抽象类中可以定义非抽象方法包换构造方法(一个抽象类中可以不包含抽象转载 2013-09-11 18:53:28 · 843 阅读 · 0 评论 -
C#中Dictionary的用法及用途
Dictionary是一个泛型他本身有集合的功能有时候可以把它看成数组他的结构是这样的:Dictionary他的特点是存入对象是需要与[key]值一一对应的存入该泛型通过某一个一定的[key]去找到对应的值举个例子://实例化对象Dictionary dic = new Dictionary();//对象打点添加dic.Add(1, "one");dic.A转载 2013-09-11 09:38:27 · 1017 阅读 · 0 评论 -
C# List泛型集合
集合是OOP中的一个重要概念,C#中对集合的全面支持更是该语言的精华之一。 为什么要用泛型集合? 在C# 2.0之前,主要可以通过两种方式实现集合: a.使用ArrayList 直接将对象放入ArrayList,操作直观,但由于集合中的项是Object类型,因此每次使用都必须进行繁琐的类型转换。 b.使用自定义集合类转载 2013-09-11 09:53:06 · 977 阅读 · 0 评论 -
未能找到类型或命名空间名称“XXXX”(是否缺少 using 指令或程序集引用?)
[C#错误] 未找到类型或命名空间名称" " (是否缺少 using 指令或程序集引用?)1现象:编译项目时提示未找到类型或命名空间名称" " (是否缺少 using 指令或程序集引用?)解决方法:1.如果是未找到类型,检查是否引用了类型所在的命名空间,使用using指令。如果是未找到命名空间,那么检查是否引用了程序集,如果确认引用了程序集,那么检查程序集版原创 2013-09-06 09:51:38 · 34876 阅读 · 4 评论 -
最简单的三层实例(C#)
三层包图:表示层UI,业务逻辑层BLL,数据访问层DAL,和实体层Entity。类图:UI层的类图是FrmLogin.BLL层的类图是LoginDAL层的类图是UserDAOEntity层的类图是UserInfo序列图:登录界面:UI层代码:[csharp转载 2013-08-27 18:48:53 · 1203 阅读 · 0 评论 -
C#中堆和栈的区别分析
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)转载 2013-08-07 19:06:28 · 3703 阅读 · 0 评论 -
您真的了解类型转换吗?
前阵子,一名同事问及类型转换的问题,我也仅仅说出目前自己的了解。但回头想想,其中的确大有学问,以前只看到了表面,其内在的表现如何,苦苦翻书,Google几番之后,依然无所收获,故大胆写下,求园中各位大牛不吝解答。类型转换的疑惑首先,我们知道类型转换也就那点事(表面的说),总归而言,C#下有几种转换,装箱,拆箱,向上类型转换,向下类型转换,平行类型转换几种。这几种的区别目前也不细转载 2013-04-17 13:51:13 · 781 阅读 · 0 评论 -
C# .sql文件读取
1.sql文件的格式:localhost,checkdb,root,wujinset names gbk;GOuse CheckDB;GOcreate table if not exists DayCheck(编号 int(5) auto_increment not null primary key,机构名称 nvarchar(20),人员编号 nvarch原创 2012-11-16 14:11:11 · 2374 阅读 · 0 评论 -
c#面向接口编程
这是网上的一段话,我认为说的比较明白1.面向接口编程和面向对象编程是什么关系首先,面向接口编程和面向对象编程并不是平级的,它并不是比面向对象编程更先进的一种独立的编程思想,而是附属于面向对象思想体系,属于其一部分。或者说,它是面向对象编程体系中的思想精髓之一。2.接口的本质接口,在表面上是由几个没有主体代码的方法定义组成的集合体,有唯一的名称,可以被类或其他接口所实转载 2013-09-13 18:20:06 · 1938 阅读 · 0 评论 -
白话C#:特性
首先要说的是,可能一些刚接触C#的朋友常常容易把属性(Property)跟特性(Attribute)弄混淆,其实这是两种不同的东西。属性就是面向对象思想里所说的封装在类里面的数据字段,其形式为: 1: public class HumanBase 2: { 3: public string Name { get; set; } 4: publ转载 2013-09-19 13:48:34 · 665 阅读 · 0 评论 -
PropertyGrid控件下拉列表
把别人的例子稍做了一下修改,部分内容没看懂,但程序可以运行,如果有什么错误或不当之处,请指教! 1 /// 2 /// 一.自定义一个特性类ListAttribute,提供下拉列表值: 3 /// 4 public class ListAttribute : Attribute 5转载 2013-09-21 13:42:49 · 4273 阅读 · 3 评论 -
C#泛型编程
泛型:通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用。例子代码:class Program { static void Main(string[] args) { int obj = 2; Testint> test = new Test转载 2013-10-29 15:37:53 · 752 阅读 · 0 评论 -
逐语句执行.NET Framework 4.0源代码
原文出处:http://blogs.microsoft.co.il/blogs/arik/archive/2010/07/12/step-into-net-framework-4-0-source-code.aspx 本文将向你展示如何配置Visual Studio 2010逐语句执行.NET Framework 4.0源代码。为啥?因为很酷。 因为能帮助调试。转载 2013-10-28 22:18:57 · 851 阅读 · 0 评论 -
VS2010下如何调试Framework源代码(即FCL)
怕忘记,重新记录一下。有一种提高自己编程能力的好办法,就是看看.net framework的源码是如何写的?我们在追踪bug的时候,也往往需要追踪到.net framework的源码中去。按照如下方法设置vs2010,即可追踪到.net framwork的源代码中去。可以看出,我将pdb文件放在了d:\msSource\MicrosoftPublicSymbols目转载 2013-10-28 21:16:05 · 746 阅读 · 0 评论 -
.NET——内存分配
在分析内存分配时,应该先了解关于堆栈的区别堆的分配向高地址扩展,而栈的分配向低地址扩展。二。内存分配关于内存的分配,首先应该了解分配在哪里的问题。CLR管理内存的区域,主要有三块,分别为: · 线程的堆栈,用于分配值类型实例。堆栈主要由操作系统管理,而不受垃圾收集器的控制,当值类型实例所在方法结束时,其存储单位自动释放。栈的执行效率高,但存储容量有限。 · GC堆,翻译 2013-10-20 12:08:03 · 2422 阅读 · 0 评论 -
关于C# 中的Attribute 特性
摘要:纠结地说,这应该算是一篇关于Attribute 的笔记,其中的一些思路和代码借鉴了他人的文笔(见本文底部链接)。但是,由于此文对Attribute 的讲解实在是叫好(自夸一下 ^_^),所以公之于众,希望能对大家有所帮助。 Attribute与Property 的翻译区别 Attribute 一般译作“特性”,Property 仍然译为“属性”。 Attribu转载 2013-10-21 21:16:54 · 753 阅读 · 0 评论 -
C++如何调用C#
SwfDotNet是C#编写的,作者的C#水平,真是令我佩服。这是个特别好的读写Swf文件的库。但是,我要用在C++项目中,怎么让C++调用C#的DLL呢。今天一上午都在琢磨这个问题,耽误了很多时间,原因是编译是出现:warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失。接着就是一大堆的0x01等等。自己做了个转载 2013-10-24 15:19:39 · 1303 阅读 · 0 评论 -
C#中ToString格式大全
C 货币 2.5.ToString("C") ¥2.50 D 十进制数 25.ToString("D5") 00025 E转载 2013-09-27 10:05:59 · 689 阅读 · 0 评论