2010-04-23 69 views
2

我調試在VS2010,我想檢查一個字符串值,但所有我能得到調試器告訴我(通過手錶,徘徊,本地人,等等)是:如何在調試時評估推遲的Linq語句?

"System.Linq.Enumerable+<TakeIterator>d__3a`1[System.Char]" 

我不不管是否有過早評估的副作用或其他問題,我只想看看如果我現在在當前的斷點處評估它,表達式會評估什麼。

這是如何完成的?我也可以用早期評估的方式更改我的代碼嗎?當我不調試時,我不在乎......但只是想知道。

如果它是相關的。(我很懷疑。)它 保存到數據庫之前,我隨便找一個新的 實體對象...一些字段被分配LINQ語句,我不確定何時在EF的封面下進行評估。數據庫更新失敗,'字符串或二進制數據將被截斷...所以我試圖找到太長的字段。

回答

5
+0

是的非常激烈。有這樣的事情正在發生。爲什麼會出現意外? – DanO 2010-04-23 22:48:45

+1

啊,呃,我明白了!我把epression樹(或其他什麼)變成一個字符串... – DanO 2010-04-23 22:50:14

+0

我一直在做這個「事故」,但它的目的。我在'Take()'之後如何返回字符串? – rtpHarry 2011-05-21 18:13:59