asp.net 判断为空的几个不同表达有什么差异

if(dt.Rows[0]["user_info"].ToString()!="")if(dt.Rows[0]["user_info"].ToString()!=Syst... if(dt.Rows[0]["user_info"].ToString()!=" ")

if(dt.Rows[0]["user_info"].ToString()!= System.String.Empty)

if(dt.Rows[0]["user_info"].ToString()!= null)

平常虽然经常用,但是一直没有注意他们之间的差异性在哪里?希望有人可以解释。
顺便请教个问题,我们用GridView显示数据库某张数据表时 如果遇到某个字段(时间),那么当这个字段值为空的时候,GridView显示这个字段的值时候竟然显示1901-01-01。这样不爽没有就显示空白就可以了,有没有人遇到这种情况,怎么解决这个日期字段值为空显示空白而不是1901-01-01的问题的
展开
 我来答
haoluogaga
2011-12-09 · TA获得超过2378个赞
知道小有建树答主
回答量:1265
采纳率:0%
帮助的人:1019万
展开全部
" " 这个是空字符串。一般用来判断字符串的
null这个是对象为空。假如你去判断一个对象是否为空就用这个。
System.String.Empty 这个也是判断是否为空,但是这个是不分配内存空间的
例如
string str = String.Empty;
string str="";//这样其实已经给str这个变量分配了内存 ,也就是通常所说的占了点资源。
更多追问追答
追问
顺便请教个问题,我们用GridView显示数据库某张数据表时 如果遇到某个字段(时间),那么当这个字段值为空的时候,GridView显示这个字段的值时候竟然显示1901-01-01。这样不爽没有就显示空白就可以了,有没有人遇到这种情况,怎么解决这个日期字段值为空显示空白而不是1901-01-01的问题的
追答
这不是同一个问题吧?麻烦先把分给了吧

你后面问这个问题很简单呀,绑定的时候 判断一下就行了。
百度网友d35dda54
2011-12-09 · TA获得超过328个赞
知道答主
回答量:177
采纳率:90%
帮助的人:38.5万
展开全部
""这个是有一个值 但是是为空的
System.String.Empty 没有内存空间分配的,
null为空 就是没有值 这个可以和""进行对比
如果还不明白 就用js试试就知道效果了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小小的变色龙
2011-12-09 · TA获得超过139个赞
知道小有建树答主
回答量:126
采纳率:100%
帮助的人:107万
展开全部
""与string.Empty我认为是一样的
但在内存中string.Empty 不分配存储空间,"" 分配一个长度为空的存储空间 他们都有在内存中是有准确的指向的
而null 关键字是表示不引用任何对象的空引用的文字值,没有指向任何地方,在使用前如果不实例化的话,都将报错。

上面三句代码意思为:判断返回的用户信息是否为空
只是看dt.Rows[0]["user_info"]是不是有值。
我建议你最好不要这样判断。最好一下判断
if(dt.Rows.count>0)
{
//判断当前数据集合里面是否有数据。
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式