用Membership类判断用户是否存在
-------------------------精通Asp.net2.0企业级项目开发学习笔记
前段时间买了本人民邮电出版社出版的精通Asp.net2.0企业级项目开发,对于缺少企业级项目经验的我来说,也许就是被那企业级几个字所吸引。通过一段时间的学习,发现此书对于我们这样的新手具有一定的借鉴性,但是其中错误也很多,在此,我将把自己学习中发现的问题做一记录,希望对与我同样层次的新手有一定的帮助,也是对自己学习的一个小结。
在本书的OA系统开发中,有这样一段代码









这是一个信息发送类发送信息方法的中的一段代码,它的本意是利用Membership.FindUserByname()判断输入的用户是否存在,如果存在,刚执行发送操作,如果不存在,返回假值。然而我在做单元测试时,发现无论用户是否存在,都会执行发送信息的操作,查数据库表文件,确实增加了一条发送记录。通过查MSDN,发现,FindUserByname方法返回值是一个MembershipUserCollection 集合,通过跟踪发现,即使用户不存在,也不可能返回null值.而MSDN中关于Membership的另一方法GetUser()引起我的注意.将程序更改如下






运行测试,程序按预期运行.