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 @   kwklover  阅读(1499)  评论(8编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示