Я начинаю использовать Code Contracts, и, хотя Contract.Requires довольно прост, мне трудно понять, что на самом деле делает Ensures.
Я пробовал создать такой простой метод:
static void Main()
{
DoSomething();
}
private static void DoSomething()
{
Contract.Ensures(false, "wrong");
Console.WriteLine("Something");
}
Я никогда не вижу сообщения «неправильно», и при этом оно не генерирует исключения или что-либо еще.
Так что же он на самом деле делает?