Как переписать класс без операторов "?:" и "=>"?
Как переписать класс, приведенный ниже, без операторов "?:" и "=>" и других "нововведений", чтобы код работал под .Net Framework 4.0 в VS2010?
class XmlAttributeConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
=> value is IEnumerable<XmlNode> values
? values.OfType<XmlAttribute>().Select(xa => xa.Value)
: value;
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
=> throw new NotImplementedException();
}
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
using System.Linq;
class XmlAttributeConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is IEnumerable<XmlNode>)
{
IEnumerable<XmlNode> values = (IEnumerable<XmlNode>)value;
return values.OfType<XmlAttribute>().Select(xa => xa.Value);
}
else
return value;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}