我在C#中使用Microsoft的Code Contracts扩展.当我编写一个具有重写的ToString实现的类,它返回null时,它正确地识别问题:
我认为这是因为Microsoft在内部使用了Code Contracts,并且他们添加了对Object.ToString的Contract.Ensures调用.但是,当我看到Object.ToString
source code时,我没有看到任何合同(我确实看到了其他合同,但不是我正在寻找的合同). Code Contracts如何确定ToString不应该返回null?