2012-04-05 4 views
0

ФОН:Фильтр внешних полей списка от клиента

Мы разрабатываем специальное приложение, которое доступ к SharePoint через объектная модель клиента и это приложение нужно получить доступ к ECT (внешний тип контента) списки, определенные в SharePoint с помощью ОМ (Объектная модель). Это приложение является продуктом, который должен использоваться при большинстве установок и конфигурации SharePoint и не может иметь предварительного знания внешних списков.

Если для ECT нет фильтров, SharePoint возвращает все доступные элементы в списке (если число меньше порога). В тот момент, когда мы определяем фильтр для этого ECT, SharePoint возвращает только элементы после применения этого фильтра (возможно, правильное поведение из SP).

ПРОБЛЕМА:

Мы должны быть в состоянии найти этот список ECT (нефильтрованный) на основе текста, введенного пользователем в поле поиска. На данный момент, похоже, нет способа изменить фильтр SharePoint, применяемый при возврате значений вызывающему объекту.

I.e. У меня есть 10 предметов в моем списке ECT (1,2,3 ... 10). Каждый элемент имеет 3 столбца (ID, имя, описание). После настройки фильтра для списка ECT SharePoint возвратит элементы 2, 3 & 6, когда я попрошу SharePoint для списка элементов.

Нет пользователя выполняет поиск в соответствии с описанием пункта 7. Как я могу найти или отфильтровать список, чтобы вернуть элемент, соответствующий моему поисковому запросу?

Я работал в кругах, пытаясь решить эту проблему, но ничего не работает. Я попытался установить запрос CAML, а также LoadQuery, как определено как в http://pholpar.wordpress.com/2011/02/09/how-to-query-external-lists-on-the-client-side-using-caml/, так и в http://msdn.microsoft.com/en-us/library/ff464384.aspx, но ничего не работает.

ответ

1

Даже у меня была эта проблема. Позвольте мне сказать вам, что это невозможно. Даже в объектной модели сервера была возможность изменить фильтры представления по умолчанию, но затем SPList вернет 0 элементов после применения фильтра. Забавно, когда ваш код запускается &, вы открываете список в интерфейсе SP, вы можете увидеть фактический измененный список. Но то же самое не может быть запросом в объектной модели.

Выглядит странно. Я думаю, если вы измените SPList (на основе ECT) в этом экземпляре, то вы можете получить результаты только в следующем экземпляре (например, при обновлении следующей страницы .....)

Смежные вопросы