我在C#控制台应用程序中有foo(object)和foo2(string).代码2抛出异常,而代码1正常工作.
你能解释为什么它的表现如此(有MSDN参考)?
//代码1
object foo = null;
string test = Convert.ToString(foo).Substring(0, Convert.ToString(foo).Length >= 5 ? 5 : Convert.ToString(foo).Length);
Run Code Online (Sandbox Code Playgroud)
//代码2
string foo2 = null;
string test2 = Convert.ToString(foo2).Substring(0, Convert.ToString(foo2).Length >= 5 ? 5 : Convert.ToString(foo2).Length);
Run Code Online (Sandbox Code Playgroud) <%# Eval("Description") == DBNull.Value ? "empty" : "notempty"%>
Run Code Online (Sandbox Code Playgroud)
即使在DB中的该字段中存在null(varchar()的类型,null),也显示始终为'notempty'...尝试检查空字符串:
<%# Eval("Description") == "" ? "empty" : "notempty"%>
Run Code Online (Sandbox Code Playgroud)
它总是显示出来......这里有什么不对?