Suppose I have a class Foo with a complex property Bar. Then, suppose I have a method like the following in some other class:
Foo
Bar
publi
Ideally, the Foo class would ensure that its Bar property is never null. If that's not possible, I would throw an ArgumentException in this case since the argument is not null, but it is invalid.
ArgumentException