2009-05-07 3 views
1

Я все еще изучаю некоторые функции C# 3.0 и хочу знать, можно ли привести следующее выражение к лямбда-выражению.Lambda Example

var SomeObject = Combo.EditValue; 
var ObjectProperty = SomeObject.Property; 

Чтобы получить ObjectProperty из combo.editvalue в одной строке?

Кроме того, если вы можете предоставить мне любые хорошие ссылки на выражения лямбда, это было бы оценено.

EDIT: Хорошо, ответы опубликованы велики, похоже, что для этого решения не требуется Lambda. Я посмотрю ссылки на ссылки, хотя ... большое спасибо тем, кто внес вклад.

ответ

5

Вам не нужно лямбды, чтобы сделать все, что вам нужно будет сделать, это

var ObjectProperty = Combo.EditValue.Property; 

Я не уверен, что лямбда собирается сделать что-либо более удобным для чтения для вас.

Вот некоторые книги, которые вы можете захотеть взглянуть на, чтобы узнать Лямбдами более подробно, а также почему вы бы использовать их:

More Effective C#

C# In Depth

MSDN Reference

+0

Я думал об одном и том же, пытаясь понять, есть ли какой-либо нюанс, который я отсутствовал в вопросе. Выглядит разумно, хотя :) – workmad3

+0

Я собирался опубликовать то же самое. – JohnOpincar

+0

Да, я все еще ищу хорошую ссылку на лямбда для этого парня, хотя – Joseph

0

Объединяя их в одну строку, вы рискуете исключить NullReferenceException, проверив свойство Property на EditValue. :) Но, here is a really great tutorial на C# 3.0 и функциональное программирование.

+0

Существует риск исключения NullReferenceException, когда код также находится на двух строках, если вы не добавите какой-то дополнительный код для проверки сначала ... – codeulike

+0

Он все равно рискнул, он не проверял первое место = P Ему понадобится чтобы проверить, как он пошел. – Joseph

+0

Это правда, мне просто не нравилось, как Combo.EditValue.Property просматривал страницу, поэтому я пропустил ее. :) –

0

Для этого не требуется лямбда.
Разве вы не можете просто использовать

var ObjectProperty = Combo.EditValue.Property 

Насколько ссылки лямбда попробовать 101 LINQ Examples для начинающих.