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
统一吗 ? 协调吗 ?