分类目录 ‘.Net’

如果平时主要开发控制台类、组件、后端服务等程序,可以尝试在Linux类操作系统下搭建C#.Net开发环境,好处是在Linux环境里你不用担心朋友或 同事拿你的电脑来玩魔兽世界或者一不小心被装了一大堆流氓软件 ;-) 先看看本篇文章最终效果:在 Ubuntu 里跑的开发环境 MonoDevelop: iwanna.cn 我想网
(全文 …)

SQL注入漏洞曾经是Web应用程序的噩梦,CMS、BBS、Blog无一不曾受其害。

SQL注入的原理

以往在Web应用程序访问数据库时一般是采取拼接字符串的形式,比如登录的时候就是根据用户名和密码去查询:

string = "SELECT TOP 1 * FROM [User] WHERE UserName = ‘” + userName + “‘ AND Password = ‘” + password + “‘”;

其中userName和password两个变量的值是由用户输入的。在userName和password都合法的情况下,这自然没有问题,但是 用户输入是不可信的,一些恶意用户只要用一些技巧,就可以绕过用户名、密码登录。

假设password的值是”1′ or ‘1′ = ‘1“,userName的值随便取,比如是”abc”,那变量sql的 值就是:
(全文 …)

微软的互操作性战略开发组当地时间8月21日公布了一个开源PHP开发工具包,它可以让PHP轻松访问微软的ADO.Net数据服务.
该工具包可以从微软CodePlex网站下载到,它基于.net框架并采用BSD许可证发布,确认支持Visual Studio 2008 Service Pack 1和明年发布的Visual Studio 2010.微软支持了多达100-130个开发商来负责微软产品补充技术,让微软的互操作性更强.
(全文 …)

1 单例模式的日常应用

我们在浏览BBS、SNS网站的时候,常常会看到“当前在线人数”这样的一项内容。对于

这样的一项功能,我们通常的做法是把当前的在线人数存放到一个内存、文件或者数据库中,每次用户登录的时候,就会马上从内存、文件或者数据库中取出,在其基础上加1后,作为当前的在线人数进行显示,然后再把它保存回内存、文件或者数据库里,这样后续登录的用户看到的就是更新后的当前在线人数;同样的道理,当用户退出后,当前在线人数进行减1的工作。所以,对于这样的一个需求,我们按照面向对象的设计思想,可以把它抽象为“在线计数器”这样一个对象,具体实现如下:

(全文 …)