Archive for the ‘Разработка’ Category
MIX09 презентация Velocity
Вполне себе отличная презентация проекта распределенного кеша Velocity
Id стандартных content typ-в
Подобно SPBuiltInFieldId, хранящему идентификаторы полей, класс Microsoft.SharePoint.SPBuiltInContentTypeId содержит идентификаторы стандартных content typ-в
CAML query: фильтрация по пользователю
Для того чтобы сделать выборку по конкретному пользователю, отличному от текущего пользователя, необходимо делать query примерно следующего вида
<Where>
<Eq>
<FieldRef Name='Author' LookupId=""TRUE"" />
<Value Type=""Lookup"">3</Value>
</Eq>
<Where>
Где 3 — соотведсвенно id-к пользователя в web-е.
Программное сохрание DateTime
Для корректного использования DateTime необходимо приводить его в timezon-у web-а.
Например когда необходимо получить UTC из сохраненного в listitem-е значения, то его необходимо привести к UTC с помощью функции spWeb.RegionalSettings.TimeZone.LocalTimeToUTC.
Верно и обратное, т.е. когда DateTime в UTC необходимо сохранить в web-е, то его необходимо преобразовать использую функцию spWeb.RegionalSettings.TimeZone.UTCToLocalTime.
Исключение составляют случаи когда, например, список элементов листа (list items) получен с помощью SPQuery с выставленным свойствам DatesInUtc в true. В таком случае даты уже преведены в UTC.
P.S. В базе даты хранятся в UTC, и приводятся каждый раз к нужной timezon-е web-а.
ID стандартных полей
Накопилось некое количество заметок о некоторых очевидных и не только моментах касательно SharePoint.
Например, для того получение id-ка стандарных field-в можно пойти поискать его определение в
%COMMONPROGRAMFILES%\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES\fields\fieldswss.xml
А можно глянуть класс Microsoft.SharePoint.SPBuiltInFieldId, в котором определены id-ки стандартный полей.
Workflow: Correlation and Queue Name
Workflow Foundation & SharePoint
So…. WF without MOSS means we can use the correct pattern. WF with MOSS, we have to use a bad pattern.
Из-за того, что в SharePoint-е нет возможности зарегистрировать свой ExternalDataExchangeService, workflow-ы лишаются вкусностей в виде подписки на собственные custom-е события.