CA2201 NullReferenceException warnings

本文关键字:warnings NullReferenceException CA2201 | 更新日期: 2023-09-27 18:18:58

我正在清理一些c#代码,我发现了一些CA2201警告。我明白这个问题,但我不确定我应该提出什么样的异常。

看一下这段代码,它是BackgroundWorker的'DoWork'事件回调。

private void DoWork(Object s, DoWorkEventArgs e)
    {
    var worker = s as BackgroundWorker;
    if (worker == null)
        throw new NullReferenceException();
    // DoSomeStuff();
    }

在这种情况下,我认为ArgumentException可以解决警告,但是这个呢?

public void Foo()
    {
    var thing = MyFactory.Create(someArgs);
    if (thing == null)
        throw new NullReferenceException();
    thing.DoSomeStuff();
    }

在这种情况下,我找不到我应该引发什么样的异常,只是因为我只有一个NullReferenceException。我在那里应该做什么?

问候。

CA2201 NullReferenceException warnings

您可以创建自己的异常类-即InstanceWasNotCreatedException并抛出它们的实例。一些有用的信息会很好。