От новичка до гуру: Курсы программирования на CyberDuff

Intellisense не распознает элементы Sharepoint.WebControl в шаблоне элемента управления

Я работаю с проектом, созданным шаблоном VS2008 Sharepoint (VSeWSS). В настоящее время при работе с имеющимися у меня файлами ASCX IntelliSense не распознает импортированные пространства имен. Я не уверен, что делать, чтобы решить эту проблему.

Примечание. Согласно приведенному ниже редактированию, импорт SharePoint.WebPartPages работает нормально, а SharePoint.WebControls — нет.

Проект строится без ошибок и правильно развертывается. Удаление строки <%@Register Tagprefix="SharePoint"... приводит к ожидаемой ошибке "Неизвестный тег сервера "SharePoint:SPGridView"" после развертывания.

Я нашел похожие вопросы (например, неопознанный префикс тега или Фильтр устройств в Visual Studio 2008), однако вопрос и ответы на него относятся только к веб-проектам. В частности, они говорят о файле web.config. Что-то, что не создается как часть шаблона SharePoint.

Предлагаемые решения и причины, по которым они не сработали:

  • Создайте файл web.config -- Файл не существует в этом типе проекта
  • Добавьте ссылку на dll -- без видимого эффекта

Дальнейшие указания или предложения по исправлению этого будут приветствоваться.

<%@ Control Language="C#" AutoEventWireup="true"
   Inherits="HelloWorld1.UserTableDoom, HelloWorld1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2ace7ea1e94310d3" %>
<%@ Register Tagprefix="SharePoint" 
   Namespace="Microsoft.SharePoint.WebControls"
   Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<SharePoint:SPGridView ID='fooGrid' runat='server'
   AutoGenerateColumns='false'
   DataKeyNames='user_id'
   DataSourceID='foo'>
...
</SharePoint:SPGridView>

Изменить: интересно, что я могу добавить пространство имен WebPartPages, и оно правильно работает в IntelliSense.

Я также отметил это при создании совершенно нового решения и размещении в нем файла ASCX. Проблема все еще существует. SharePoint.WebPartPages работает, а SharePoint.WebControls — нет.

<%@ Register Tagprefix="WebPartPages"
   Namespace="Microsoft.SharePoint.WebPartPages"
   Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<WebPartPages:...>  -- works correctly.

  • Какой шаблон VS2008 Sharepoint вы использовали? От ВСЕВСС? 18.09.2009
  • Ага, шаблон VSeWSS (минимум 15 символов). 18.09.2009

Ответы:


1

Я использую тот же код, что и вы, чтобы отобразить SPGridView, однако у меня нет проблем с Intellisense. Он имеет странное форматирование над словом SharePoint в Microsoft.SharePoint.WebControls, но кроме этого работает нормально:

<%@ Control Language="C#" AutoEventWireup="true" Inherits="QueryDemo.QueryDemoControl, QueryDemo, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5434e690be8749f6" %>
<%@ Register Tagprefix="WebControls" Namespace="System.Web.UI.WebControls" Assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<SharePoint:SPGridView
    id="queryGrid"
    runat="server"
    DataSourceId="queryData"
    AutoGenerateColumns="false"
    width="100%"
    AllowSorting="True">
      <AlternatingRowStyle CssClass="ms-alternating"/>
</SharePoint:SPGridView>

Убедитесь, что у вас есть ссылка на Microsoft.SharePoint в проекте Visual Studio, и попробуйте выполнить код. Если отображается сетка, проблема должна заключаться в Intellisense.

18.09.2009
  • Страница работает корректно. В разделе «Ссылки» проекта есть ссылка на библиотеку. Я непривычен к VS :/. 18.09.2009
  • К сожалению, я мало знаю о рабочем процессе VS. Но конкретный файл - это ascx, с которым я загружаю свою веб-часть. 18.09.2009
  • @Danny: Может быть, это как-то связано с типом проекта. Вы пытались настроить проект веб-приложения и скопировать туда ASCX? 18.09.2009
  • @Alex: я воссоздал файл в другом решении для веб-сайта, и здесь он тоже не работает. Microsoft.SharePoint.WebControls просто не работает. WebPartPages делает. 21.09.2009
  • @Danny: попробуйте загрузить исходный код в мой проект CodePlex spquerydemo.codeplex.com. Это использует SPGridView в пользовательском элементе управления в веб-приложении. Это может помочь диагностировать проблему. Если вы хотите попробовать отправить файл .ascx по электронной почте, воспользуйтесь контактной ссылкой на codeplex. com/site/users/view/arangas или напишите мне свой адрес в Твиттере @alexangas, и я отвечу со своим адресом. 22.09.2009
  • @ALex: открытие файла 12/TEMPLATE/CONTORLTEMPLATES/QueryDemo/QueryDemoControl.ascx дает обычные ошибки, с которыми я сталкивался в своих собственных приложениях. WebControls существуют и распознаются, SharePoint нет. Здесь должно быть что-то, чего мне не хватает. 22.09.2009
  • @Danny: Должна быть вещь, специфичная для окружающей среды. Не уверен, насколько еще я могу помочь, не видя вашу машину. Может быть, проблема с установкой Visual Studio или SharePoint? Возможно, вообще ничего общего с SharePoint? 23.09.2009

  • 2

    Попробуйте установить пакеты обновления для Visual Studio.

    18.09.2009

    3

    Попробуйте запустить следующее:

    C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv -resetsettings
    

    Возможно, вам придется работать от имени администратора для максимального эффекта.

    28.09.2009

    4

    Я также делаю сборку своей собственной строкой, и она работает:

    <%@ Assembly Name="Microsoft.SharePoint, Version......" %>
    

    ...... - это остальная часть строки.

    22.02.2012
    Новые материалы

    Отслеживание состояния с течением времени с дифференцированием снимков
    Время от времени что-то происходит и революционизирует часть моего рабочего процесса разработки. Что-то более забавное вместо типичного утомительного и утомительного процесса разработки. В..

    Я предполагаю, что вы имеете в виду методы обработки категориальных данных.
    Я предполагаю, что вы имеете в виду методы обработки категориальных данных. Пожалуйста, проверьте мой пост Инструментарий специалиста по данным для кодирования категориальных переменных в..

    Игра в прятки с данными
    Игра в прятки с данными Я хотел бы, чтобы вы сделали мне одолжение и ответили на следующие вопросы. Гуглить можно в любое время, здесь никто не забивается. Сколько регионов в Гане? А как..

    «Раскрытие математических рассуждений с помощью Microsoft MathPrompter и моделей больших языков»
    TL;DR: MathPrompter от Microsoft показывает, как использовать математические рассуждения с большими языковыми моделями; 4-этапный процесс для улучшения доверия и рассуждений в математических..

    Раскройте свой потенциал в области разработки мобильных приложений: Абсолютная бесплатная серия
    Глава 6: Работа в сети и выборка данных Глава 1: Введение в React Native Глава 2: Основы React Native Глава 3: Создание пользовательского интерфейса с помощью React Native Глава 4:..

    Все о кейсах: Camel, Snake, Kebab & Pascal
    В программировании вы сталкивались с ними при именовании переменной, класса или функции. Поддержание согласованности типов и стилей случаев делает ваш код более читабельным и облегчает совместную..

    Как работает дистанционное парное программирование и почему оно может изменить вашу жизнь
    Серебряная пуля от одиночества и отвлекающих факторов во время обучения программированию Независимо от того, работаете ли вы или учитесь удаленно, велика вероятность, что одиночество и..