C#最好的方法是在一个对象上调用.ToString()

Tot*_*oto 0 c# rewrite

如何在类型为object的对象上调用.ToString()方法,该对象可以为null.我目前正在做以下事情,但它很长:

  myobject == null ? null : myobject.ToString()
Run Code Online (Sandbox Code Playgroud)

Fre*_*örk 11

使行为更加封装的一种方法是将其放在扩展方法中:

public static class ObjectExtensions
{
    public static string NullSafeToString(this object input)
    {
        return  input == null ? null : input.ToString();
    }
}
Run Code Online (Sandbox Code Playgroud)

然后你可以调用NullSafeToString任何对象:

object myobject = null;
string temp = myobject.NullSafeToString();
Run Code Online (Sandbox Code Playgroud)