Skip to content

.net

WCF Callback

WCF Callback回调显示进度

利用WCF的Callback Contract实现服务端回调显示进度百分比示例,客户端暴露出一个回调的EndPoint给服务端,服务端从调用的Context中拿到回调地址,然后通过CallbackContract进行回调,包含服务端和客户端实现

[C#]WaitOne与AutoResetEvent

AutoResetEvent根据我的理解,是做线程互斥时所使用的信号量,在有独占资源时使用,它提供了一对方法,WaitOne()与Set(),用以阻塞线程进入等待状态与发出信号让阻塞的线程放行,WaitOne()就像一个闸门,程序执行到这里会被阻塞,直到Set()方法被别的线程调用,发出信号,闸门打开,阻塞的线程才会继续执行,否则会一直等待下去。

authSoap

[C#].net webservice实现调用身份认证

WebService发布之后,任何用户都可以对其进行调用,为了防止一些接口被匿名用户访问,可以对.net webservice实现调用认证,把要认证的信息填入SoapHeader中,在调用Api时一并发给服务端,服务端取出认证信息进行验证

Discuz 用户密码加密算法

Discuz的密码加密算法其实就是两次MD5加密,首先用明文进行一次加密,之后随机生成一个salt,再把第一次的密文后面添加salt作为明文再进行一次MD5加密。

Mysql Unix_TimeStamp转C#.net DataTime

MySQL UNIX_TIMESTAMP()返回了一个从1970-01-01 00:00:00UTC时间到现在的秒数,它是一个无符号整数,因此我们在转化成.net的DataTime时,要从1970-01-01 00:00:00时开始加上这么多秒数,最后得到DateTime的时间

dotnet

无源码情况下修改.net应用程序

今天需要修改程序里的数据内容,本来很简单只用改config配置文件就可以了,数据是写在那里面的,结果那个程序作了保护,一旦修改config,就会报“数据文件已损坏,请联系管理员”。心想这下糟了,又没有源码,这怎么改啊。想起之前做项目的时候有人反汇编看源码的,自己硬着头皮尝试了一把,发现其实也不是特别难…