7
我有一個使用async/await
功能的.NET 4.5 proj。調試.NET異步/等待函數時無法檢查變量
當我嘗試檢查/快速監視一個的await語句後變量引用,我得到以下幾點:
The name 'id' does not exist in the current context
知道如何解決這個問題,所以我可以調試呢?
Edit--這裏的代碼
[Fact]
public async Task works_as_expected()
{
var repo = Config.Ioc.GetInstance<IAsyncRepository<Customer>>();
var work = Config.Ioc.GetInstance<IUnitOfWork>();
Customer c= new Customer()
{
FirstName = "__Micah",
LastName = "__Smith_test",
DateCreated = DateTime.Now,
DateModified = DateTime.Now,
Email = "[email protected]",
Phone = "7245551212"
};
var id=await repo.Insert(c);
// i can't inspect the value of id
Assert.True(id > 0);
}
你什麼時候想檢查ID?它真的在'var id ...'行後面嗎? – 2013-02-27 15:51:42
確實是這樣 - 這是遍及我的所有代碼的事情,這只是一個非常簡化的代碼版本,它也會發生。我希望得到一個解釋,爲什麼它發生在微觀將最終也告訴我爲什麼它發生在宏 – Micah 2013-02-27 15:54:15
這對我有用。我創建了一個超級笨拙的實現。 'var id = await Task.Factory.StartNew(()=> {System.Threading.Thread.Sleep(1000); return 1;}); return id;' –
2013-02-27 16:09:35