我运行程序时不断收到此错误.
你调用的对象是空的.描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.异常详细信息:System.NullReferenceException:未将对象引用设置为对象的实例.
Source Error:
Line with error:
Line 156: if (strSearch == "" || strSearch.Trim().Length == 0)
Run Code Online (Sandbox Code Playgroud)
它的正确写法是什么?
Mat*_*ell 102
.NET 4.0中的正确方法是:
if (String.IsNullOrWhiteSpace(strSearch))
Run Code Online (Sandbox Code Playgroud)
String.IsNullOrWhiteSpace上面使用的方法相当于:
if (strSearch == null || strSearch == String.Empty || strSearch.Trim().Length == 0)
// String.Empty is the same as ""
Run Code Online (Sandbox Code Playgroud)
IsNullOrWhiteSpace方法的参考
http://msdn.microsoft.com/en-us/library/system.string.isnullorwhitespace.aspx
指示指定的字符串是否为空,空或仅由空格字符组成.
在早期版本中,您可以执行以下操作:
if (String.IsNullOrEmpty(strSearch) || strSearch.Trim().Length == 0)
Run Code Online (Sandbox Code Playgroud)
String.IsNullOrEmpty上面使用的方法相当于:
if (strSearch == null || strSearch == String.Empty)
Run Code Online (Sandbox Code Playgroud)
这意味着您仍然需要.Trim().Length == 0根据示例检查"IsWhiteSpace"案例.
IsNullOrEmpty方法的参考
http://msdn.microsoft.com/en-us/library/system.string.isnullorempty.aspx
指示指定的字符串是Nothing还是Empty字符串.
说明:
您需要确保strSearch(或任何变量)null在您使用点字符(.)取消引用之前 - 即在您执行之前strSearch.SomeMethod()或strSearch.SomeProperty需要检查它之前strSearch != null.
在您的示例中,您希望确保您的字符串具有值,这意味着您要确保字符串:
String.Empty/ "")在上面的例子中,你必须把"它是否为空?" 首先是case,所以当字符串为时,它不会继续检查其他情况(和错误)null.
Rit*_*ton 23
所有版本的.Net:
if (String.IsNullOrEmpty(strSearch) || strSearch.Trim().Length == 0)
Run Code Online (Sandbox Code Playgroud)
.Net 4.0或更高版本:
if (String.IsNullOrWhitespace(strSearch))
Run Code Online (Sandbox Code Playgroud)
在这种情况下,strSearch可能为null(不仅仅是空的).
尝试使用
String.IsNullOrEmpty(strSearch)
如果你只是想确定字符串是否没有任何内容.
小智 5
我知道这是大约一年前发布的,但这是供用户参考的.
我遇到过类似的问题.在我的情况下(我会尽量简短,如果你想了解更多细节,请告诉我),我试图检查字符串是否为空(字符串是电子邮件的主题).无论我做什么,它总是返回相同的错误消息.我知道我做得对,但它仍然不断抛出相同的错误信息.然后我突然意识到,我正在检查电子邮件(实例/对象)的主题(字符串),如果电子邮件(实例)在第一个位置已经是空的话.我怎么能检查电子邮件的主题,如果电子邮件已经是空...我检查电子邮件是否为空,它工作正常.
在检查主题(字符串)时,我使用了IsNullorWhiteSpace(),IsNullOrEmpty()方法.
if (email == null)
{
break;
}
else
{
// your code here
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
889020 次 |
| 最近记录: |