- 1
XElement rootNode = XDocument.Load("hospital.xml").Descendants().Descendants("mainform").Single(x => x.Attribute("value").Value.Split("\\".ToCharArray()).Contains(splitted[1]));
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+140.9
XElement rootNode = XDocument.Load("hospital.xml").Descendants().Descendants("mainform").Single(x => x.Attribute("value").Value.Split("\\".ToCharArray()).Contains(splitted[1]));
Весь проект в подобном говне, дебажить невозможно
guest 01.07.2009 20:25 # 0
that's called LINQ, sucker
guest 02.07.2009 00:34 # +3
guest 02.07.2009 10:03 # 0
guest 02.07.2009 14:11 # +6
В этом коде не правильно построены цепочки операторов запроса.
Сравните такое построение:
и такое:
Это лучше чем *!!!верстать!!!* на блядском сишном синтаксисе, процедуры. Взгляните на вещи трезвыми глазами, ООП требует нового подхода. Который перед нашими глазами.
guest 02.07.2009 16:06 # −2
Обычный LINQ-to-Xml, что не нравится? Разве что переформатировать стоит для читабельности:
XElement rootNode = XDocument.Load("hospital.xml")
.Descendants()
.Descendants("mainform")
.Single(x => x.Attribute("value").Value
.Split("\\".ToCharArray())
.Contains(splitted[1]));
Надо знать язык, на котором пишешь:)
guest 02.07.2009 16:08 # +2
1) XDocument.Load("hospital.xml") - при загрузке дока
2)Descendatns() == null
3)Descendants("mainform")
3) x.Attribute("value")
4) splitted[1] == null
И подумай какого это будет дебажить и суппортить тому кто этот код не писал
При чем здесь новый подход в ООП? Писать надо нормально
Dimarius 11.08.2009 18:40 # 0
guest 02.07.2009 17:26 # 0
guest 02.07.2009 22:13 # 0
[quote=Говногость]
Посмотри код выше, и подумай, в каких местах потенциально может быть ошибка
1) XDocument.Load("hospital.xml") - при загрузке дока
2)Descendatns() == null
3)Descendants("mainform")
3) x.Attribute("value")
4) splitted[1] == null
[/quote]
Ты удивишься:) Спецификации LINQ предписывают не возвращать null ни при каких обстоятельствах, вместо это при необходимости - бросать исключение.
Разумеется, исключения надо обрабатывать, тут и спорить нечего.
guest 18.06.2010 10:09 # 0