In a new C# 6.0 we can define methods and properties using lambda expressions.
No, you can't. You can define method and property bodies using syntax which looks like a lambda expression, in that it uses the token =>
.
However, importantly this does not mean that there's a delegate type involved. (Whereas a lambda expression is only permitted in a context where it's converted to an expression tree or delegate type.)
This is purely syntactic sugar. Your two example code snippets will compile to the exact same IL. It's just a different way of representing the body of a property getter or method.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…