Sha*_*ica 27 c# linq lambda edit-and-continue
我在其他问题中看到它说Linq查询语法编译为Lambda.
那么为什么在方法中有Lambda表达式时你不能进行编辑和继续,而使用查询表示法可以吗?
什么是最令人愤怒的,并且认真地让我考虑切换到在任何地方使用查询表示法,即使你的代码不在Lambda中,但是在同一方法中的其他地方有一个Lambda,你不能编辑并继续!这就像是对粗心的开发人员造成的无端痛苦!
Jon*_*eet 20
编辑和继续能够"实时"更改方法实现,但不能更改类型中的字段.
Lambda表达式(和匿名方法)在捕获变量时最终可能会创建自己的私有类型.更改lambda表达式可以更改所涉及的类型,这将破坏编辑并继续.
听起来应该可以对没有这种影响的代码进行更改,但我怀疑完全防止它更容易 - 这也意味着你不会开始进行更改然后发现你被阻止了改变的一半.
(就个人而言,我首先不是E&C的粉丝,所以我从未注意到它.)