#c# #.net #linq
#c# #.net #linq
Вопрос:
Эй, я застрял в преобразовании простой инструкции Linq из синтаксиса запроса в синтаксис fluent на C #. Я думаю, что это возможно, но мне нужна подсказка.
from property in target.GetType().GetProperties()
select new
{
Name = property.Name,
Value = property.GetValue(target, null)
};
Для..
var props = target.GetType().GetProperties().Select(p=>p.Name.... )
Что мне нужно изменить после Select
?
Комментарии:
1. О чем именно вы спрашиваете?
2.
....
это мой вопрос. Извините за нечистый вопрос. Моя правка исправляет это
Ответ №1:
var props = target
.GetType()
.GetProperties()
.Select(p => new {
Name = p.Name,
Value = p.GetValue(target, null)
});
Комментарии:
1. Идеально! Спасибо, как предлагает ReSharper, я просто меняю на:
origin.GetType().GetProperties().Select(p => new {p.Name, Value = p.GetValue(origin, null)});
Name = p.Name в этом нет необходимости.2. В данном случае в этом действительно нет необходимости, но это было и в другом синтаксисе. 🙂 Я подумал, что, возможно, у вас есть стиль кодирования, который требует этого, например, чтобы иметь согласованный вид со строкой ниже.
Ответ №2:
var props = target.GetType()
.GetProperties()
.Select(p => new {
Name = p.Name,
Value = p.GetValue(target, null)
});
?