在Windows 7 x64的VS2012中使用代碼契約1.4.51019.0時,我從ccrewrite收到以下編譯錯誤:「The method or操作未實現。「 .NET 4.5中的代碼合同+異步:「方法或操作未實現」
它似乎是由屬性訪問的組合和使用的方法async
缺乏內await
引起。
繁殖步驟:
創建一個新的類庫與 '滿' 運行合同檢查功能:
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; }
}
}
有其他人遇到此?
刪除「異步」修改器修復了這個問題,我想? –
是的(除非你需要返回一個任務)。 –
這是Mike Barnett的項目。他喜歡收到電子郵件,所以不要猶豫,讓他知道這個錯誤。 mbarnett _at_ microsoft _dot_ com –