如果c#中对象参数为空,如何创建自己的异常?

本文关键字:创建 自己的 异常 何创建 对象 参数 如果 | 更新日期: 2023-09-27 17:50:12

我使用以下代码:

public static string ToJSONString(this object obj)
{
    using (var stream = new MemoryStream())
    {
        var ser = new DataContractJsonSerializer(obj.GetType());
        ser.WriteObject(stream, obj);
        return Encoding.UTF8.GetString(stream.ToArray());
    }
}

但是当对象为null时,我得到以下结果:

系统。NullReferenceException未被用户代码处理HResult = -2147467261消息=对象引用未设置为对象的实例。

是否有一种方法可以捕获这个异常并将其返回给调用程序?现在它给了我上面的错误,Visual Studio停止了。

如果c#中对象参数为空,如何创建自己的异常?

处理您的具体情况的正确方法是

if (myObject != null)
{
     string json = myObject.ToJSONString(); 
     // other logic
}
else
{
     // handle the situation where myObject is null
}