DotNet Framework不协调的一面 ??

在Microsoft China MSDN上看到 利用 ASP.NET Starter Kit 即刻开始 Web 站点开发

这篇文章,以前觉得这个示例程序太old了,所以没在意去看,看完上面那篇文章,艾~~~,

不简单啊,有那么好啊,所以花了一个晚上,看了最简单的一个Starter Kit -- Commerce Starter Kit,
在加上看看Aierong文章--代码阅读总结之ASP.NET StartKit Commerce,这个程序就算看完了,浮躁的人啊.....

可是购屋车里的一段代码让我疑惑了:
if (context.User.Identity.Name != "")
{
    return context.User.Identity.Name;
}
为什么不是这样:
if (context.User.Identity.Name != null)
{
    return context.User.Identity.Name;
}

随后自己做了一下测试,证实我的想法是错误的,在用户没有登陆验证的时候,
context.User.Identity.Name返回的是""或者string.Empty,而不是null

那我为什么会产生上面的疑惑呢 ?
Commerce Starter Kit里有下面的一段代码:
if (context.Request.Cookies["ASPNETCommerce_CartID"] != null)
{
    return context.Request.Cookies["ASPNETCommerce_CartID"].Value;
}

同样是表示没有值,一个返回"" ,一个返回null

统一吗 ? 协调吗 ?

posted @ 2005-01-08 23:52  kwklover  阅读(1499)  评论(8编辑  收藏  举报