This site uses cookies to deliver our services. By using this site, you acknowledge that you have read and understand our Cookie and Privacy policy. Your use of Kontext website is subject to this policy. Allow Cookies and Dismiss

C# Programming

About C# Programming Language: features, and syntax and so on.

XmlSerializer 序列化与反序列化CDATA 以及实现IXmlSerializable接口

1167 views   0 comments last modified about 8 years ago

 Serialize and Deserialize CDATA with XmlSerializer
XmlSerializer类可以帮助我们将对象的状态序列化对保存,同时通过反序列化,可以还原对象的状态。通过与XML序列化与反序列化相关的特性(Attribute),可以控制我们的序列化的XML格式;同时通过实现IXmlSerializable接口,可以自定义的实现序列化与反序列化。关于此类,详情查看MSDN XmlSerializer类。不过在一些特殊情况下,C

View detail

在C#中调用C/C++ DLL中的方法

197 views   2 comments last modified about 8 years ago

一,创建C++ DLL项目

View detail

在C#中实现三十二进制Duotricemary

575 views   0 comments last modified about 8 years ago

在我们的一个系统中,为了更方便以及用更少的字符表示更大的数字,在C#中实现了32进制的结构Duotricemary,也可将其更改为类。它主要包含的功能为:通过字符串比如“2EWS”创建三十二进制的实例,也可以通过整型比如12000创建实例,既可以把数字以三十二进制的字符表述,也可以三十二进制的字符转换为整型;添加了从string以及int类型强制转换的隐式操作符,也添加了加减操作符,其它功能可以自行根据需要添加。

View detail

C#调用C++/C API 对应类型表

226 views   0 comments last modified about 9 years ago

在.NET中我们可能会经常调用C++、C的API,这涉及到外部方法的签名的定义,于是需要用到对应的类型来定义c#中的方法参数、返回类型等,下表是对应的关系:(注:一种数据类型也可以有多种c#数据类型与之对应,这可以根据实际情况决定;Ctrl+F查找你对应的数据类型)

View detail

Visual C# 2010 新增特性

164 views   0 comments last modified about 9 years ago

在Visual C# 2010 中新增了一些功能,这些功能可以增强对Microsoft Office 可编程性的支持、更好的代码导航以及对测试驱动的支持等等。本文叙述的内容可以参考MSDN What's New in Visual C# 2010 http://msdn.microsoft.com/en-us/library/bb383815.aspx;主要内容阐述和举例说明C#4.0的新特性以及编译器的新功能等。

View detail

C#操作Excel的类以及其使用举例说明

2131 views   1 comments last modified about 9 years ago

1前言 这两天由于某种需要,研究了一下.NET中对Excel的互操作,之前主要是直接通过第三方的组件等方式来操作的Excel,这次仔细的研究了一下,对常用的Excel操作需求做了一个简单的总结,比如创建Excel,设置单元格样式,合并单元格,导入内存中的DataTable,插入图片、图表等。在此基础上借助于Microsoft.Office.Interop.Excel对这些操作进行了封装最终形成了ExcelHandler类。本文主要对自己封装的这个类进行简单的举例说明,关于此类的完整代码参见第三...

View detail

C#中的位运算

127 views   0 comments last modified about 10 years ago

位操作符是对数据按二进制位进行运算的操作符。位操作是其他很多语言都支持的操作,如C、C++和Java等,C#也不例外支持位操作。注意位操作支持的数据类型是基本数据类型,如byte、short、char、int、long等,C#支持的位操作有如下几种:
· 按位与 &
· 按位或 |
· 按位取反 ~
· 左移 <<
· 右移 >>
· 异或^在C#中位操作同C的位操作没有什么区别,位操作的速度相对较快,而且如果熟练的话,处理起来也相对方便,特别是在一些权限等相关的设置中,比如:用1、2、4、8、16、32、64分别代表查看、添加、编辑、修改、删除、审批等权限值的时候,如果某个用户的最终权限是多种权限值的叠加,用位操作来判断是否具有某种权限是相当方便的了。

View detail

如何最大限度提高.NET的性能

167 views   0 comments last modified about 11 years ago

1)避免使用ArrayList。
     因为任何对象添加到ArrayList都要封箱为System.Object类型,从ArrayList取出数据时,要拆箱回实际的类型。建议使用自定义的集合类型代替ArrayList。.net 2.0提供了一个新的类型,叫泛型,这是一个强类型,使用泛型集合就可以避免了封箱和拆箱的发生,提高了性能。2)使用HashTale代替其他字典集合类型(如StringDictionary,NameValueCollection,HybridCollection),存放少量数据的时候可以使用HashTable.

View detail