Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как в инициализатор объекта добавить простую логику (if). В частности проблема с XElement / 3 сообщений из 3, страница 1 из 1
16.08.2013, 16:58
    #38369196
LINQStudent
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в инициализатор объекта добавить простую логику (if). В частности проблема с XElement
Привет.Дайте совет.
Мне нужно распарсить XML. Делаю это через LinqToXml.
В конечном итоге я получаю XElement, из которого мне нужно создать объект через инициализатор
Код: c#
1.
2.
3.
4.
...select (e => new MyObj 
{
   MyValue = e.Value
})


К сожалению XElement.Value возвращает string. Но это не правильно, если свойство isEmpty=True.

Соответственно хочется сделать такой код

Код: c#
1.
2.
3.
4.
5.
...select (e => new MyObj 
{
   (e.IsEmpty) ? MyValue = null : MyValue = e.Value
   
})



Но синтаксис такое не позволяет. Я правильно понимаю ?


Я подумываю просто добавить метод-расширение.

Что думаете ? Как правильней ?
...
Рейтинг: 0 / 0
16.08.2013, 17:10
    #38369215
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в инициализатор объекта добавить простую логику (if). В частности проблема с XElement
Код: c#
1.
MyValue = e.IsEmpty?null:e.Value
...
Рейтинг: 0 / 0
16.08.2013, 17:28
    #38369238
LINQStudent
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в инициализатор объекта добавить простую логику (if). В частности проблема с XElement
Спасибо.
Видимо я действительно не разобрался с синтаксисом инициализатора. Кучу лишних скобок поставил, а потом бросил это дело и решил написать метод-расширение :)
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как в инициализатор объекта добавить простую логику (if). В частности проблема с XElement / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]