- Разработка
- категория
Довольно часто приходится разбираться во всяких аспектах работы той или иной платформы, технологии, естественно не обходится без обнаружения каких либо мелких, но порой очень важных особенностей.
И посему есть идея организации некой базы накопленных знаний, ибо память, как известно может порой и подводить.
Если бы в наполнении этой базы участвовало несколько человек, то более естественно было бы организовать это хозяйство в виде wiki, а пока, и это обличие, в виде постописательства сойдёт.
Custom SiteTemplate name
вторник, 1 апреля 2008Полчаса потерянного времени. Ибо совсем забыл, что имя файла с шаблоном должно начинаться с webtemp (кроме шуток, а то знаете ли день сегодня такой).
XmlSerializer
понедельник, 31 марта 2008XmlSerializer съедает \r у строк при десириализации.
Будьте бдительны! :)
makecab limits
пятница, 25 января 2008Ситуация:
На post-build event-е повешен обработчик, который пересобирает solution для Sharepoint-а (ибо это простой cab).
Однако, как оказалось makecab-а, по умолчанию, есть ограничение на размеры файлов.
Т.е. скармливаешь ему ddf файл, со списком файлов, которые нужно упаковать. Он в ответ, что исходный размер файлов 12М, на выходе 4М. Смотришь а полученный архив 1,5М — не порядок.
Следующие директивы в ddf файлы изменят сложившуюся ситуацию:
.Set CabinetFileCountThreshold=0 .Set FolderFileCountThreshold=0 .Set FolderSizeThreshold=0 .Set MaxCabinetSize=0 .Set MaxDiskFileCount=0 .Set MaxDiskSize=0
SharePoint SPLinkButton
понедельник, 31 декабря 2007В SharePoint-й SPLinkButton есть такое свойство как QueryStringParametersToInclude, из названия понято, что в данном свойстве прописываются параметры, которые нужно добавить к линке из текущей строки запроса.
Мелочь а приятно и главное крайне функционально.
Security validation in Sharepoint
понедельник, 31 декабря 2007Была у нас как-то надобность программно удалять web prefix-ы в Sharepoint-e, однако при всяких наших манипуляциях вылетал следующая ошибка:
"The security validation for this page is invalid. Click Back in your Webbrowser, refresh the page, and try your operation again."
Здесь spiderwool.blogspot.com было найдено решение, которое собственно сводилось к выставлению Enabled для FormDigestSettings в false.
Итого
SPWebApplication webApp = web.Site.WebApplication;
webApp.FormDigestSettings.Enabled = false;
…Run code…
webApp.FormDigestSettings.Enabled = true;
spWebApp.Prefixes.Delete(url.Substring(1));
Visual Studio 2008
понедельник, 19 ноября 2007Совсем незаметно для меня, в процессе некой предзимней амебности, и 2-го захода на побелеть, вышла Visual Studio 2008. Различные источники тыкали пальцем уж в совсем разные даты. А вот нате-с разрелизились сегодня.

Sharepoint Security and .NET Impersonation2
вторник, 30 октября 2007В продолжении поста Sharepoint Security and .NET Impersonation, WSA нашёл пример в MSDN по выполнению определённого кода под повышенными правами (под SHAREPOINT\System account identity)
SPSite siteColl = SPContext.Current.Site;
SPWeb site = SPContext.Current.Web;
SPSecurity.RunWithElevatedPrivileges(delegate() {
using (SPSite ElevatedsiteColl = new SPSite(siteColl.ID)) {
using (SPWeb ElevatedSite = ElevatedsiteColl.OpenWeb(site.ID)) {
string SiteCollectionOwner = ElevatedsiteColl.Owner.Name;
string Visits = ElevatedsiteColl.Usage.Visits.ToString();
string RootAuditEntries =
ElevatedSite.RootFolder.Audit.GetEntries().Count.ToString();
}
}
});
По-сути данный код делает тоже, что и наш самописный.
Sharepoint Security and .NET Impersonation
вторник, 30 октября 2007Для использования имперсонализации для всякого рода нужд в рамках SharePoint-а необходимо знать некоторые, не совсем очевидные, хитрости.
Хозяйке на заметку:
Impersonation is the ability of a thread to execute in a security context that is different from the context of the process that owns the thread.
Жадный на Exception Details SharePoint
среда, 10 октября 2007Даже при необходимых настройках для вывода отладочной информации, при exception-х произошедших в шаблоне страницы SharePoint приложения, в окно браузера плюется минимум информации, как правило типа “Value does not fall within the expected range”, а весь сок оседает в EventViewer-е.
Code Snippet — маленькие хитрости
среда, 10 октября 2007Code Snippet — этакие блоки автоматической генерации шаблона кода в VisualStudio, довольно нужная вещь, ибо можно зашаблонить многие вещи, вплоть до некоторых патернов разработки.
Линки:
http://dotnetjunkies.com/Article/C95AC204-DE44-4D4A-A2B7-1EB1BE14A8A1.dcik
http://msmvps.com/blogs/kevinmcneish/archive/2007/04/30/property-code-snippet-for-visual-studio-2005.aspx