Ошибка получения "Тип или имя пространства имен" LayoutsPageBase "не удалось найти"

Чтобы дать вам полную перспективу, я пытаюсь создать пользовательскую ленту в SharePoint. Для этого я следую этому учебнику. Я создал необходимую функцию и смог развернуть и протестировать ее с помощью простого предупреждения JavaScript. Теперь я пытаюсь вызвать страницу ASPX при нажатии кнопки ленты.

Для этого я создал страницу приложения в моем проекте. Но в коде за файлом страницы ASP.NET появляется следующая ошибка:

The type or namespace name 'LayoutsPageBase' could not be found (are you missing a using directive or an assembly reference?)
C:\Users\Administrator\Documents\Visual Studio 2012\Projects\CustomRibbonButton\CustomRibbonButton\Layouts\CustomRibbonButton\ApplicationPage1.aspx.cs

Я импортировал (надеюсь, это то, что вы называете на С#) Microsoft.SharePoint.WebControls с оператором using Microsoft.SharePoint.WebControls;

Из этого вопроса в StackOverflow мне удалось понять, что класс LayoutsPageBase недоступен в решениях песочницы (с контуром \UserCode\assemblies).

Итак, в моем проекте я пошел в References > Microsoft.SharePoint, щелкнул правой кнопкой мыши по нему, чтобы просмотреть его Свойства. Его Path в окне "Свойства" отображается как C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\ISAPI\Microsoft.SharePoint.dll.

Что может быть причиной этой ошибки и как ее можно решить?

Ответ 1

Вы можете проверить, нет ли проекта SharePoint в песочнице, щелкнув правой кнопкой мыши проект в обозревателе решений и просмотрев свойства.

Существует свойство true/false, называемое Sandboxed Solution.