Я получаю следующую ошибку компиляции ccrewrite при использовании Code Contracts 1.4.51019.0 в VS2012 в Windows 7 x64: "Метод или операция не реализованы."
Похоже, что это вызвано комбинацией аксессуаров свойств и использованием методов async
, у которых отсутствует внутренний await
.
Действия по воспроизведению:
Создайте новую библиотеку классов с включенной проверкой контракта "Полный" Runtime Contract:
namespace CodeContractsAsyncBug
{
using System.Threading.Tasks;
public class Service
{
// Offending method!
public async Task ProcessAsync(Entity entity)
{
var flag = entity.Flag;
}
}
public class Entity
{
public bool Flag { get; set; }
}
}
Кто-нибудь еще испытал это?