Вы имеете в виду, кроме код контрактов сам?Что с ним не так?
Поскольку контракты кода поддерживают .NET 2.0 ... или так, я думаю, из этого комментария к FAQ:
Если вы не используете его (например,, вы используете .NET 2.0 или 3.5), затем вы используете реализацию класса контракта, поставляемую в сборке Microsoft.Contracts.dll, и Debug.Assert вызывается с соответствующей строкой, указывающей, какой типпроизошла ошибка