Ответ 1
Q. При работе с SPSecurity.RunWithElevatedPrivileges(веб-контекст) какие учетные данные используются?
а. Идентификатор пула приложений для веб-приложения, на котором выполняется SharePoint.
Пусть у вас есть список хороших вопросов для интервью для разработчиков SharePoint. Пожалуйста, укажите один вопрос на запись и, если возможно, ответы.
Кроме того, не стесняйтесь предлагать исправления, если предоставленные ответы неверны.
Пойду первым:
В: Как SharePoint хранит страницы?
A: Как разместить-sharepoint-document-library-source-page-on-the-server?
Q. При работе с SPSecurity.RunWithElevatedPrivileges(веб-контекст) какие учетные данные используются?
а. Идентификатор пула приложений для веб-приложения, на котором выполняется SharePoint.
Q. При изменении элемента списка, какая "основная" разница между использованием SPListItem.Update() и SPListItem.SystemUpdate()?
а. Использование SystemUpdate() не создаст новую версию и сохранит отметки времени.
В: Когда вы должны размещать объекты SPWeb и SPSite? И что еще важнее, когда нет?
A: Вы должны всегда распоряжаться ими, если вы создали их самостоятельно, но не иначе. Вы никогда не должны удалять SPContext.Current.Web/Site, и вы, как правило, не должны удалять SPWeb, если IsRootWeb является истинным. Более сложными конструкциями являются вещи по линии SPList.ParentWeb.
Бонусные баллы, если кандидат знает Сообщение блога Роджера Лэмба.
Q: В чем разница между System.Web.UI.WebControls.WebParts.WebPart
и Microsoft.SharePoint.WebPartPages.WebPart
?
A: Microsoft.SharePoint.WebPartPages.WebPart
предоставляется в MOSS 2007 для обеспечения обратной совместимости с веб-страницами MOSS 2003. В MOSS 2007 рекомендуется использовать System.Web.UI.WebControls.WebParts.WebPart
.
иногда мне нравится задавать более открытые вопросы, чтобы обсудить перспективы.
Если я хочу узнать техническую глубину
Q: Какие ошибки вы обнаружили в SharePoint? затем Q: И что вы сделали, чтобы обойти их?
Q. Если у вас есть получатель событий ItemUpdated или ItemUpdating и он вызывает обновление этого элемента, как вы предотвращаете запуск другого события ItemUpdated и ItemUpdating во время обновления?
а. Перед выполнением обновления вызовите функцию DisableEventFiring(). После обновления вызовите EnableEventFiring().
Q. Что такое семейство сайтов, почему вы создаете новый семейство сайтов, а не сайт?
а. Немного длинного ответа, но они должны знать об администрировании семейства сайтов, квотах, разделении активов, модели безопасности и т.д.
Дэйв Уоллерман имеет хорошую статью о некоторых из тех, что и почему.
В: Каково влияние производительности RunWithElevatedPrivileges
?
A: RunWithElevatedPrivileges
создает новый поток с учетными данными пула приложений, блокируя текущий поток до его завершения.
[через rexm]
Q: Опишите разницу между списком и библиотекой.
A: Списки представляют собой коллекции метаданных или столбцов, которые могут иметь прикрепленные документы. Библиотеки представляют собой коллекции документов (Excel, InfoPath, Word и т.д.) Плюс дополнительные метаданные.
Отредактированная обратная связь для ktrauberman.
Q: (i) Опишите цель типа контента и; (ii) привести пример того, где они могут быть использованы.
A: (i) Тип контента группирует набор столбцов списка вместе, чтобы их можно было повторно использовать одинаково на разных сайтах. (ii) Они могут использоваться как набор столбцов метаданных, которые должны применяться к каждому документу в семействе сайтов.
В: Объясните, как SharePoint отображает его содержимое. A: Помимо области здесь, но вы можете найти здесь полезную информацию: http://g-m-a-c.blogspot.com/2008/04/how-sharepoint-2007-renders-its-content.html
Заявитель должен хотя бы обойти механизм рендеринга шаблонов SharePoint, а также то, что в 12/TEMPLATE/CONTROLTEMPLATES/и то, что он использовал, с упором на DefaultTemplates.ascx. Это абсолютно необходимое знание, если вы хотите сделать какие-либо настройки SharePoint.
Q: Назовите, по крайней мере, две общие службы, доступные в MOSS 2007
A: Поставщики общих служб в MOSS 2007 могут предоставлять следующие общие службы:
Q. В чем разница между MOSS и WSS
а. MOSS использует общий поставщик услуг для поиска, импорта профиля и т.д. (См. ответы, опубликованные Lars Fastrup для более полного списка)
Q: Как вы программно извлекаете элемент списка?
A: SPQuery и SPSiteDataQuery. Бонусные баллы за знание CrossListQueryCache, PortalSiteMapProvider. Отрицательные точки для использования foreach.
В: Почему вы использовали пользовательский столбец?
A: он позволяет повторно использовать столбец в нескольких библиотеках. Особенно полезно, если вы используете тип выбора, чтобы ограничить ввод пользователя предопределенным набором ответов, и когда этот список ответов, скорее всего, изменится.
Q. Какие базовые классы наследуют приемники событий?
А:
Также см. сборник вопросов SharePoint по адресу: http://qmoss.blogspot.com/
В: Каковы встроенные способы резервного копирования SharePoint?
A: через центральное администрирование и команду stsadm
Q: (более продвинутый). Вы создали и развернули веб-часть, когда вы развертываете сервер, вы получаете страницу, в которой ваша веб-часть не может быть загружена, нажмите здесь, чтобы перейти на страницу обслуживания веб-частей, и т.д., чтобы отключить веб-часть. Какие шаги вы должны предпринять, чтобы получить дамп стека из вашей веб-части вместо этой страницы с ошибкой?
A: перейдите в файл web.config для своего сайта и найдите атрибут CallStack в элементе SafeControls и установите для него значение true.
Опишите свой опыт применения пользовательского брендинга в SharePoint 2007. Каковы некоторые подводные камни, которых следует избегать? Как вы развертываете свой собственный брендинг в ферме?
Когда/почему вы должны/не должны делать прямые изменения или дополнения к файлам в 12 кустах?
Q. Как создать страницу мастера/детали?
а. Создание типа контента, наследующего от типа содержимого папки для мастера, и другого типа контента, наследующего элемент, и использования их как в списке
Опишите каталог бизнес-данных (BDC) и предоставьте хотя бы одно из его приложений.
В: Каков способ повышения привилегий SharePoint без использования RunWithElevatedPrivileges?
A: Передайте токен пользователя учетной записи системы из SPContext в конструктор SPSite.
В большинстве случаев разработчик может выполнить то, что им нужно, используя этот метод, без необходимости увеличивать сетевые учетные данные.
Я бы предпочел задать некоторые открытые вопросы:
Скажите мне, что вы считаете ошибкой, которую Microsoft сделала в SharePoint?
Возможные ответы...
Для столбцов поиска вам нужно заранее знать GUID поля поиска, и вы не можете легко найти поле поиска как функцию.
MOSS не имеет событий на уровне сайта, таких как событие для создания списков.
Дизайнер SharePoint - это дерьмо и добавляет ненужный материал, который увеличивает размер страницы.
Отсутствие управления обрезкой на основе групп пользователей, поскольку только обрезка на основе разрешений доступна по умолчанию (из-за чего вы можете создать настраиваемый триммер безопасности, который делает это)
Q. Каковы типы данных, которые поддерживаются в столбце "Поиск" в SharePoint.
а. В качестве столбцов поиска поддерживаются только отдельные строки текста и расчетные столбцы.
Также я собрал еще несколько вопросов: http://qmoss.blogspot.com/