Welcome 微信登录

首页 / 软件开发 / C#

基于CMPP3.0协议SP端的实现(C#)

基于CMPP3.0协议SP端的实现(C#)

基于CMPP3.0协议SP端的实现(C#)2010-12-19 博客园 幸福延长线最近一段是时间项目可能需要提供短信功能,客户作为一个 SP 端提供短信 业务;网上搜索了一番,找到了比较不错的 CMPP30 类的代码,该代码基本实现 了 CMPP3.0 协议中的短信收发、网络重连等功能。本人将其重新改造,提供了 同步发送、异步发送的支持(原先版本的异步发送并非标准的 .NET 异步发送模 式,这部分代码是一个异步操作实现的“范本”,...
C#3.0杂谈之使用EventLog类写Windows事件日志

C#3.0杂谈之使用EventLog类写Windows事件日志

C#3.0杂谈之使用EventLog类写Windows事件日志2010-12-19 博客园 银河使者操作系统:Windows XP SP3开发工具:Visual Studio 2008语言:C# 3.0.net Framework:3.5在程序中经常需要将指定的信息(包括异常信息和正常处理信息)写到日志中。在C#3.0中可以使用EventLog类将各种信息直接写入Windows日志。EventLog类在System.Diagnostics命名空间中。我们可...
c#3.0:使用传递出来的匿名类型

c#3.0:使用传递出来的匿名类型

c#3.0:使用传递出来的匿名类型2010-12-19 csdn 傅晗今天看了csdn上的一段视频讲解c#3.0的,虽然主讲人有点口吃但我还是坚持 听完了。里面有一句话我引起了我的兴趣,如果在结构上相同我们就可以对一个 匿名类型进行强转。看来在关键时刻我们还是可以直接操作匿名类型的虽然有点 麻烦。我们知道匿名类型实际上就是.net自动生成的一个泛型类,并且只要字段名 相同类型相同就会使用同一个匿名类型。所以我们只要类用这个特性就可以把一 个通过参数传递的匿...
C#3.0语言新特性之隐式类型

C#3.0语言新特性之隐式类型

C#3.0语言新特性之隐式类型2010-12-19 博客园 马伟20.1 隐式类型在C#3.0中增加了一个变量声明var,这个声明和JavaScript 的var类似,但 也有不同。相同之处是它可以用var来声明任何类型的局部变量;而不同之处在 于它仅仅负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,而 且只能是局部变量。20.1.1 隐式类型局部变量的声明与使用在C# 3.0中,引进了一个新的关键字叫做var。var允许你声明一个新变量, 它...
C#3.0语言新特性之匿名变量

C#3.0语言新特性之匿名变量

C#3.0语言新特性之匿名变量2010-12-19 博客园 马伟20.2.1 引入匿名变量在很多情况下,我们需要一种能够临时将一批具有一定关联的数据存放起来 的对象;或者在某些情况下,我们对仅一个对象的“形状”(如属性的名字和类 型等)比较感兴趣。例如Book类,当它和其他商品放在一起进行查询时,我们可 能仅对其名称和价格感兴趣,并且希望将这两种属性放在另外一个单独的临时对 象中以备今后使用。这时,我们关注的仅仅是这个临时对象具有N...
C#3.0语言新特性之对象和集合初始化器

C#3.0语言新特性之对象和集合初始化器

C#3.0语言新特性之对象和集合初始化器2010-12-19 博客园 马伟在C#3.0中,一个对象创建表达式可以包含一个对象或集合初始化器,用于初 始化新创建的对象的成员或新创建的集合的元素。对象创建表达式:new type (argument-list(可选)) 对象或集合初试化器(可选)new type 对象或集合初试化器一个对象创建表达式可以省略构造器参数列表,并将其连同圆括号一起替换 为一个对象或集合初始化器。省略构造器参数列表并将其连同圆括号一起...
C#3.0中的“多重继承”

C#3.0中的“多重继承”

C#3.0中的“多重继承”2010-12-19在路上的牛C#的对象系统是个单根系统,不支持类的多继承,只支持多接口实现,这在 某种程度带来了一些不便:我们在系统设计时经常会抽象出一些接口,并为接口 提供一个抽象类作为默认的实现,然后实际使用的类可以从抽象类派生。如果一 个类实现了多接口,那我们只能选择一个抽象类作为祖先类,再将其他接口的实 现手工加到类中。这种情况在C#3.0中有了变化,我们现在可以利用C#3.0的扩展方法来实现一 个“受限的多...
c#3.0系列:Extension Method

c#3.0系列:Extension Method

c#3.0系列:Extension Method2010-12-19gjcn我们说在C#3.0中,引入了一些列新的特性,但是个人认为Extension Method 这个特性是最爽的,最有创新的。它真正的解决了:在保持现有Type原封不动的情况下对其进行扩展,你可以 在对Type的定义不做任何变动的情况下,为之添加所需的方法成员。下面我就来 讲讲。C#3.X出来之前大家都知道javascript有个特新Prototype,它就如同C#3.X中的Extens...
C#实现二、八、十六进制数转十进制数的算法

C#实现二、八、十六进制数转十进制数的算法

C#实现二、八、十六进制数转十进制数的算法2010-12-19二进制换为十进制的方法,例如:二进制数:11001十进制数:1*24+1*23+0*22+0*21+1*20=25八进制换为十进制的方法,例如:八进制数:32007十进制数:3*84+2*83+0*82+0*81+7*80=13319十六进制换为十进制的方法,例如:十六进制数:a20f(由于十六进制数用a~f表示10~15之间的数,所以计算时将a~f用10~15表示)十进制数: 10*83+2*...
C#基于大整数类的RSA算法实现(公钥加密解密,私钥加密解密)

C#基于大整数类的RSA算法实现(公钥加密解密,私钥加密解密)

C#基于大整数类的RSA算法实现(公钥加密解密,私钥加密解密)2010-12-19 博客园 快乐怪物最近因为项目需要通过RSA加密来保证客户端与服务端的通信安全。但是C#自 带的RSA算法类RSACryptoServiceProvider只支持公钥加密私钥解密,即数字证 书的使用。所以参考了一些网上的资料写了一个RSA的算法实现。算法实 现是基于网上提供的一个大整数类。一、密钥管理取得密钥主要 是通过2种方式一种是通过RSACryptoServicePro...
c#冒泡、快速、选择和插入排序算法的项目应用

c#冒泡、快速、选择和插入排序算法的项目应用

c#冒泡、快速、选择和插入排序算法的项目应用2010-12-19 博客园 Jeff Wong在之前的一篇文章里,我们简单地实现了对一维数组的四种排序算法,但是 在实际的项目中,我们排序的方式可能(几乎是一定)不止仅仅按照数字排序, 我们常常按照合适的需要的排序方式进行排序,比如航班信息可能按时间排序, 商品信息可能按价格排序等等。下面改进之前的那一篇“c#实现冒泡、快 速、选择和插入排序算法”里的代码,实现可以对不同对象(实例中是C...
c#版点在面内算法

c#版点在面内算法

c#版点在面内算法2010-12-19点在面算法,就是放射线算法,原理很简单,就是把一个点向任意方向发射(本程序是向下),如果跟这个面有奇数个交点,证明点在面里面,若是偶数个,则是在外面(包括0),算法主要是优化效率。本人水平有限,算法中肯定有不足之处,请大家海涵!主要函数如下。1. struct TabPoint2.{3.private double x;4.public double X5.{6.get { return x; }7.set { x =...
C#实现A*算法

C#实现A*算法

C#实现A*算法2010-12-19在游戏中,AI的最基本问题之一就是寻路算法或称路径规划算法,在三 年前,我曾实现过 基于“图算法”的最短路径规划算法,然而在游 戏中,我们通常将地图抽象为有单元格构成的矩形,如:这个微型地图 由3*3的单元格构成,当然,实际游戏中的地图通常比它大很多,这里只是给出 一个示例。由于游戏地图通常由单元格构成,所以,基于“图算法 ”的路径规划便不再那么适用,我们需要采用基于单元格...
C#实现路径规划(最短路径)算法

C#实现路径规划(最短路径)算法

C#实现路径规划(最短路径)算法2010-12-19以前空闲的时候用C#实现的路径规划算法,今日贴它出来,看大家有没有更 好的实现方案。关于路径规划(最短路径)算法的背景知识,大家可以参考 《C++算法--图算法》一书。该图算法描述的是这样的场景:图由节点 和带有方向的边构成,每条边都有相应的权值,路径规划(最短路径)算法就是 要找出从节点A到节点B的累积权值最小的路径。首先,我们可以将 “有向边”抽象为Edge类:Code[cop...
<< 51 52 53 54 55 56 57 58 59 60 >>