我有一个存储图像文件路径的表,现在在我的代码中我有一些条件:
var UserQuery =
(from u in DataContext.UserProfiles where u.UserIDfk == currentUserId select u)
.FirstOrDefault();
if (UserQuery.Avatar == DBNull.Value.ToString())
{
UsersAvatarImage.ImageUrl = "Images/UserAvatar/default_avatar.jpg";
}
if (UserQuery.Avatar != DBNull.Value.ToString())
{
UsersAvatarImage.ImageUrl = UserQuery.Avatar;
}
我正在检查列的值是否为空,如果是,则将图像控件的值设置为某个默认图像,如果它不显示存储在数据库中的图像,我不知道为什么它不工作。
我还尝试了 string.IsNullOrEmpty 和 else 子句作为第二个 if 或空双引号而不是 DBNull.Value.ToString() 但它也不起作用。
奇怪的是,当我评论第二个 if 条件时,第一个 if 满足条件并显示默认图像,但是当我评论第二部分时,第一部分不起作用
值得注意的是,当我插入数据时,我使用 DBNull.Value.ToString() 将值作为空值传递,该列如何同时为空而不为空,有没有更好的方法来检查这个?