вторник, 12 июля 2011 г.

Использование ObjectDataSource в SharePoint 2010 Visual Web Part

Создаём простейшую визуальную веб-часть.

В контрол добавляем ObjectDataSource (ODS) и что-нибудь его отображающее, допустим DataGrid:

Создаём необходимые для ODS классы — для поиска и для объекта поиска. Неважно, что они делают и возвращают.
Делаем встраивание веб-части и пробуем добавить её на страницу.

Неожиданно получаем следующую ошибку:

«Не удается найти тип объекта данных, указанный в свойстве TypeName ObjectDataSource 'SearchResultsDataSource'.»
или
«The data object type specified in the DataObjectTypeName property of ObjectDataSource ' SearchResultsDataSource' could not be found»

В чём же дело??

А дело в том, что ODS не находит нашу сборку DLL. Соответственно и необходимый тип в ней.

Решения данной проблемы может быть два: 
1. Положить сборку веб-части в папку BIN необходимого сайта (по умолчанию, «C:\inetpub\wwwroot\wss\VirtualDirectories\80\bin\»). Способ не совсем удобный. Но подходит для тех кто изначально добавляет библиотеки в BIN, а не GAC.
2. Поправить файл конфигурации сайта, web.config:
  <configuration>
  <system.web>
    <
compilation>
      <
assemblies>
        <
add assembly="YourAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=fed062df71e7ef1c" />
      </
assemblies>
    </
compilation>
  </
system.web>
</
configuration>

Комментариев нет:

Отправить комментарий