Всё-таки полезно иногда, когда у тебя вырезают всякий мусор из тела :) После аппендицита, в мозгах словно перещелкнуло: довольно серьезно изменил манеру программирования под SharePoint.
Теперь, я гораздо больше времени трачу на поиск решения. На воплощение - как правило, примерно столько же, сколько раньше. Но зато, на порядок меньше времени - на поддержку созданного решения. И решение получается значительно качественнее.
Как показывает опыт последних месяцев, если тщательно искать, всегда найдется какая-нибудь лазейка, которая позволит более тесно сынтегрироваться с SharePoint, и за счет этого, решение обретет большую гибкость.
Банальный пример: вам требуется как-то по-своему отобразить список. 9 из 10 просто сядут и напишут веб-часть, которая забирает данные из списка и их отображает. И потеряют гигантское количество возможностей, которые они могли бы поиметь, если бы не поленились разобраться с возможностями XsltListViewWebPart.
К примеру, я недавно создал XSL-преобразование, которое меняет отображение одного из стандартных списков. При этом, не только сохранились те стандартные возможности, которые мне были нужны, как например сортировка и фильтрация, но также в качестве неожиданного бонуса, обнаружилась масса других.
К примеру, в представлениях можно использовать группировку, - и хотя она была не нужна для моего конкретного решения, но на внутренней презентации мы совершенно случайно попробовали сгруппировать представление, и внешний вид получился очень классный. Неожиданный, приятный бонус.
Это решение поведенчески полностью соответствует обычным представлениям списков: к примеру, можно выделять одну или несколько записей; работают контекстные вкладки Ribbon'а, и т.д.
И еще, как видите, здесь поля могут быть различных типов: E-mail, ссылка, телефон, мобильный телефон. Дак вот, я добился, чтобы при добавлении пользователями портала в представление новых полей, поля эти естественным образом отображаются, и для них можно даже задать тип и отобразить в правой колонке с соответствующей иконкой. Впрочем, это тема для отдельного поста.
Мораль: не ленитесь изучать SharePoint, интегрируйтесь глубже. Оно того стоит!
Можно поинтересоваться как это было реализовано?
ОтветитьУдалить"Дак вот, я добился, чтобы при добавлении пользователями портала в представление новых полей, поля эти естественным образом отображаются, и для них можно даже задать тип и отобразить в правой колонке с соответствующей иконкой. Впрочем, это тема для отдельного поста."