相关疑难解决方法(0)

115
推荐指数
2
解决办法
3万
查看次数

对象的方法调用不会抛出异常

这些天我遇到了很多奇怪的场景 :-)

我在ASP.Net应用程序中测试了以下两个代码.代码1抛出异常(如预期的那样),而当字符串值为null时,代码2不会抛出异常(与期望相反).

  1. 为什么" EVAL "在这种情况下不会抛出异常?
  2. EVAL的工作总是这样(即"不例外")或者只是运气吗?
  3. 是否有任何MSDN引用说'Eval'返回空字符串?

// 代码1:导致异常

 string test = Convert.ToString(subscriber.EncryptedSSN).Substring(0, Convert.ToString(subscriber.EncryptedSSN).Length >= 5 ? 5 : Convert.ToString(subscriber.EncryptedSSN).Length);
Run Code Online (Sandbox Code Playgroud)

// 代码2:不抛出异常

 <%# Convert.ToString(Eval("EncryptedSSN")).Substring(0, Convert.ToString(Eval("EncryptedSSN")).Length  >= 5 ? 5 : Convert.ToString(Eval("EncryptedSSN")).Length)  %>
Run Code Online (Sandbox Code Playgroud)

参考文献:

  1. DBNull的Eval检查不起作用
  2. Convert.ToString对"NULL对象"和"NULL字符串"的行为有所不同
  3. 返回的数据类型因表中的数据而异

.net c# asp.net

0
推荐指数
1
解决办法
220
查看次数

标签 统计

.net ×2

c# ×2

asp.net ×1