次のクラス階層があるとします。
public class FooBase
{
private readonly object _obj;
protected FooBase(object obj)
{
Contract.Requires(obj != null);
_obj = obj;
}
}
public class Foo : FooBase
{
public Foo(object obj) : base(obj)
{
}
}
コンパイルすると、次の CodeContracts エラーが発生しますFoo
。
Error 12 CodeContracts: Missing precondition in an externally visible method. Consider adding Contract.Requires(obj != null); for parameter validation
検証が基本クラスで既に行われていることを CodeContracts に認識させる方法はありますか?