在不知道返回值时,取消字符串或任何类型?

时间:2014-07-02 14:26:51

标签: c# servicemanager

如果你不知道它的价值是什么,那么取消该项目的最佳方法是什么?我正在通过对象可以是任何类型的对象。当我不知道返回值可能是什么时,我该如何施展呢?

string viewValue
    = emop.Object[null, viewDetails.Columns[i].Property] != null
          ? emop.Object[null, viewDetails.Columns[i].Property].Value.ToString()
          : string.Empty;

我认为将所有对象强制转换为字符串可能会更好,但有些项目未能说明项目为空。

1 个答案:

答案 0 :(得分:1)

未批准转换为所有对象的字符串,因为我不知道您正在处理的数据。我相信这会解决你的实际错误。

string viewValue
= emop.Object[null, viewDetails.Columns[i].Property] != null && emop.Object[null, viewDetails.Columns[i].Property].Value != null
      ? emop.Object[null, viewDetails.Columns[i].Property].Value.ToString()
      : string.Empty;

我在.Value属性上添加了一个非空检查。否则调用.ToString()可能会调用null对象。