public static string ValidateDataRow_S(DataRow row, string colname)
{
if (row[colname] != DBNull.Value)
return row[colname].ToString();
else
return System.String.Empty;
}
怎么判断返回的是System.String.Empty
比如说类admin中的password为空值,不是null值
我admin.password=="" 或者 admin.password==null 或者 admin.password.length==0都不行,不知道怎么回事
{
if (row[colname] != DBNull.Value)
return row[colname].ToString();
else
return System.String.Empty;
}
怎么判断返回的是System.String.Empty
比如说类admin中的password为空值,不是null值
我admin.password=="" 或者 admin.password==null 或者 admin.password.length==0都不行,不知道怎么回事
解决方案 »
- 就剩38分了,请教discuz.web.admin相关问题。
- AjaxPro问题
- 客户端对象和服务向服务器端转换问题??
- 求助高手:如何在Asp.Net中读取文本文件到数据库
- 请帮忙解决:Microsoft VBScript 运行时错误 错误 '800a0046' ,谢谢!!!(祝大家情人节快乐!)
- 关于项目整合
- 组建团队,招.net开发人员
- 请教asp.net程序中的域用户验证问题
- ASP.NET开发软件的困惑........
- 请问,如何制作web图表?或者是如何使用mschart控件。(数据为动态的,并且来自数据库,要求web图表能动态显示),急用!!
- 如何显示分月份显示最近半年的销售和点击量?
- [求助]在ASP.Net环境调用VC++写的ActiveX控件问题。。。
如果为null asmin.password == null 结果为 true
如果在DataGrid中, == DBNull.Value 结果为 true还有一种可能,看上去为空,实际上是很多空白字符的组合,这种情况发生在数据类型为char的列中
所以上面的任何比较代码都会为false
所以,需要使用下面的代码判断
admin.password.Trim() == string.Empty;
if (admin.password == adminPassword || admin.password=="")
{
}if (admin.password == adminPassword || admin.password==null)
{
}if (admin.password == adminPassword || admin.password.length==0)
{
}刚刚二楼那样子也没判断出来
if (admin.password == adminPassword || admin.password.Trim() == string.Empty)
{
}
{
//不為空時
}
else
{
//為空時
}
public static string ValidateDataRow_S(DataRow row, string colname)
{
if (row[colname] != DBNull.Value)
return row[colname].ToString();
else
return System.String.Empty;
}
this._password = GetSafeData.ValidateDataRow_S(dr, "password");
{
}
这样子也不行,不知道到底怎么获取返回的System.String.Empty
{
return System.String.Empty;
}
else
{
return row[colname].ToString().Trim();
}
改成 if (!string.IsNullOrEmpty(row[colname].toString())&&row[colname].toString().Trim()!="0")
{
//....
}
string str = System.String.Empty;
if (string.IsNullOrEmpty(str))
Response.Write("System.String.Empty");
else
Response.Write("error");Empty 你不会判断,你返回null 不可以么 ? 就认准Empty 了 ?
都告诉你怎么判断了,你自己不去试哪位 版主大仙啊 ~ 这也推荐
现在的CSDN啊,什么问题都推荐,莫非这里也有潜规则?!
{
}楼主你可以断点调试下
看看admin.password 和adminPassword 分别是什么东西调试看一下不就知道了么
很简单的事情为什么不调试下呢
admin.password 根本不等于 string.Empty把下面代码的执行结果贴出来再说吧:
void test() {
string s = admin.password;
if(s == null)
Response.Write("Null");
else if(s == string.Empty)
Response.Write("Empty");
else if(s.trim() == string.Empty)
Response.Write("Space");
else
Response.Write(Server.HtmlEncode(s));
}
string s = admin.password;
if(s == null)
Response.Write("Null");
else if(s == string.Empty)
Response.Write("Empty");
else if(s.trim() == string.Empty)
Response.Write("Space");
else {
s = s.Replace("\n","[Enter]").Replace("\t","[Tab]");
Response.Write(Server.HtmlEncode(s));
}
}
/// <summary>
/// 判断对象是否为空或NULL,如果是空或NULL返回true,否则返回false
/// </summary>
/// <param name="comeStr">要检测的字符串</param>
/// <returns></returns>
public static bool IsNullOrEmpty(object comeStr)
{
bool tempFlag = true;
if (comeStr != null)
{
string tempStr = comeStr.ToString().Trim();
if (tempStr.Length > 0)
tempFlag = false;
}
return tempFlag;
}
该方法并不能判断一连串空格的情况