SharePoint and oData

В SharePoint 2010 многое сделано для открытости доступа к данным, в том числе поддержка oData. Клиентская модель построена поверх этих возможностей.

Для того, чтобы опробовать возможности SharePoint oData в действии вам достаточно вызвать сервис ListData:

http://[serverName]/_vti_bin/ListData.svc

Если в результате получите ошибку 404, то скорее всего у вас не стоит ADO.NET Data Services v1.5 CTP2

Далее можно попробовать воспользоваться Visual Studio

image

В результате получить довольно-таки неоднозначные в связи с локалью богатые возможности:

  class Program
  {
    static void Main(string[] args)
    {
      var context = new ClientDataContext(new Uri("http://localhost/_vti_bin/ListData.svc"));
      context.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
      var результат = context.ДокументыПроекта.Где(x => x.Имя != null).ToList();
    }
  }

  public static class Расширения
  {
    public static IEnumerable<T> Где<T>(this IEnumerable<T> source, Func<T, bool> predicate)
    {
      return source.Where(predicate);
    }
  }

Ну или просто возможность работы из браузера:

image

А так же из Excel, благодаря PowerPivot.


2 комментария on “SharePoint and oData”

  1. Eugene:

    Не совсем по теме, за то о наболевшем: возможно ли подключение к вебсервисам шарепоинта (в частности userprofileservice) с машины не состоящей в домене шарепоинта?
    Я пытаюсь подсунуть в Credentials админский логин, но сервис отвечает: Attempted to perform an unauthorized operation.
    Возникло подозрение, что его веб-сервисы принимают только windows аутентикацию.

    • butaji:

      Да, так скорее всего не получится использовать. Думаю, что стоит играться с аутентификацией на стороне SharePoint в зависимости от ваших нужд


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